Git Product home page Git Product logo

jiang-s / bpmneditor Goto Github PK

View Code? Open in Web Editor NEW

This project forked from heshanjse/bpmneditor

0.0 2.0 0.0 742 KB

BPMN editor help users to implement BPMN diagrams using tasks,gateways,start events and end events.This BPMN editor has the capability to build complete Business Process diagrams; download Business Process diagrams files in Json format; upload json format file and generate Business Process diagrams.

JavaScript 65.26% HTML 32.16% CSS 2.57%

bpmneditor's Introduction

BPMN Editor

Business Process Model and Notation (BPMN) is a standard way of representing business processes in graphical form.
This project will involve implementing a Web based BPMN editor to construct business process diagrams. Users can implement BPMN diagrams using tasks,gateways,start events and end events.

  • task-User Task,Script Task,Mail Task,Manual Task
  • Gateway-Parallel Gateway,Exclusive Gateway,Inclusive Gateway,Event Gateway
  • Start event-Start Event,Time Start Event,Message Start Event,Error Start Event
  • End event-End Event,Error End Event,Terminate End Event,Cancel End Event

This BPMN editor has the capability to build complete Business Process diagrams; download Business Process diagrams files in Json format; upload json format file and generate Business Process diagrams.

BPMN element Overview

Start Event    Time Start Event    Message Start Event    Error Start Event


End Event    Terminate End Event    Error End Event    Cancel End Event


Parallel Gateway    Exclusive Gateway    Inclusive Gateway    Event Gateway


User Task             Script Task             Mail Task             Manual Task

How to Use

User can drag and drop BPMN elements from the tool box to the drawing canvas.Those BPMN elements can be dragged in the canvas and upon clicking on any of those elements will cause a tooltip to appear. Also, the artefacts inside any of tooltips depend on the BPMN element selected. eg:- End Event element does not have a flow drawing artefact whereas the Task elements has all of the available artefacts

BPMN flows(connect elements) can be drawn using the flow artefact from either the toolbox or the element tooltip. That BPMN flow can be changed using multiple connection points.When the drawn elements move about, connected flows will also respond accordingly by maintaining the connections.

A BPMN Task can be resized using its bounding box, additionally, the text of a BPMN Task can be changed after pressing the relevant artefact in tooltip. Every element can be deleted using the delete artefact of a tool tip, which means that all its connected flows will get deleted too. However, the user has the ability to delete a flow without deleting it’s constituent BPMN elements. Every BPMN element can add properties using the given property artefact in its tooltip, which will create a popup window showing the applicable properties.

Any BPMN graph drawn can be downloaded as a JSON file. The users can also recreate a BPMN graph in the editor by importing a BPMN JSON file. This recreated graph will be editable just as a fresh one.

BPMN editor screen shot


Running the BPMN Editor

Runs like a typical Html/javaScript app: ``` - Clone the project from github - Open index.html using your browser ```

Directory Layout

``` BPMNEditor/ |—app/ |— drawingpage/ | |— endevent/ | | |—endevent.js —> End Event Controller | |—flow/ | | |—flow.js —> Flow Controller | |—gateway/ | | |—gateway.js —> Gateway Controller | |—startevent/ | | |—startevent.js —> Start Event Contoller | |—task/ | | |—task.js —> Task Controller | |—bpmnjsonUpdater.js —> Recreate a BPMN graph after JSON import | |—bpmnuploader.js —> Push BPMN elements to JSON file | |—devider.js —> Declare second level app module | |—drawing.js —> Declare top level app module |— img/ —> All images |—public/ | |—css/ —> All css libraries | |— js/ —> All javascript libraries |— index.js —> Canvas and toolbox HTML page ```

Demo

http://heshanjse.github.io/BPMNEditor/app/

Contact

For more information on the application contact : [email protected]

bpmneditor's People

Contributors

heshanjse avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.