angular-bpmn is a set of AngularJS directives used to display BPMN diagrams in the browser, using SVG elements.
WARNING: this repo is a work in progress, laking important parts to be a functional system.
angular-bpmn is created with AngularJS, nodejs, expressjs, SVG, gulp, karma, jasmine, etc.
Business Process Model and Notation (BPMN) is a standard for business process modeling that provides a graphical notation for specifying business processes in a Business Process Diagram.
The objective of BPMN is to support business process management, for both technical users and business users, by providing a notation that is intuitive to business users, yet able to represent complex process semantics.
Display BPMN diagrams inside an app backed by a process management system can be a valuable way of representing the state of a process and their history and its future. Sometimes it is useful for process debugging and for process simulation. There are now multiple BPMN based engines, mainly big and with many tools, but the are also some other lighter engines wich can be used in more modular systems. One of them is https://github.com/e2ebridge/bpmn based on node.js and JavaScript.
angular-bmpn aims to be another tool useful to build apps backed by a process management engine, and help to develop, test, monitor, etc. all the parts of that apps.
To launch the example on your pc use:
git clone https://github.com/eemece2/angular-bpmn.git
cd angular-bpmn
npm install
bower install
node example/server.js
and browse to http://localhost:8000
TODO: View them online.
TODO: Show generated diagram examples as static SVGs
You can copy the /dist folder content, and link the css and js files in your html.
TODO: publish bower package
angular-bpmn uses gulp as their automation tool/task runner.
To build production code you should use the 'build' gulp task:
gulp build
Production code will be located on the /dist folder.
angular-bpmn uses karma as his test runner, and jasmine as his testing framework.
To test angular-bpmn source code launch karma runner (with autowath files and continuous running) with:
karma start
You can use 'watch' gulp task to watch source code changes, so that production code is rebuild and the browser (the examples) is refreshed, thanks to livereload module:
gulp watch
With Jenkins you can use the following build commands:
npm install
bower install
karma start karma.jenkins.conf.js
junit test reports will be created at folder ./test-reports
Use the following XML path on jenkins job config option: Post-build Action -> Publish JUnit test result report -> Test report XMLs:
test-reports/**/test-results.xml