A BPMN 2.0 rendering toolkit and web modeler. https://bpmn.io/toolkit/bpmn-js/
Go to file
Nico Rehwaldt 3c87716895 feat(viewer): emit export events
This makes the viewer emit events during SVG and XML export.

These events allow others to hook in, i.e. to trigger additional _save_
actions.

Closes #811
2018-06-12 15:44:52 +02:00
.github docs(project): add pull request template 2017-09-26 14:34:02 +02:00
docs docs(SETUP): remove grunt 2017-10-04 09:27:54 +02:00
lib feat(viewer): emit export events 2018-06-12 15:44:52 +02:00
resources chore(project): build pre-packaged distros with Rollup 2018-04-03 18:09:52 +02:00
tasks chore(project): build pre-packaged distros with Rollup 2018-04-03 18:09:52 +02:00
test feat(viewer): emit export events 2018-06-12 15:44:52 +02:00
.babelrc chore(project): build using ES6 ready deps 2018-04-03 16:30:05 +02:00
.eslintignore chore(project): drop grunt + bundle assets to dist directory 2018-02-02 11:24:00 +01:00
.eslintrc chore(project): build pre-packaged distros with Rollup 2018-04-03 18:09:52 +02:00
.gitignore chore(project): opt-out of package-lock 2018-04-02 11:20:44 +02:00
.npmignore chore(project): build pre-packaged distros with Rollup 2018-04-03 18:09:52 +02:00
.npmrc chore(project): opt-out of package-lock 2018-04-02 11:20:44 +02:00
.travis.yml chore(project): drop wiredeps 2018-06-06 14:24:11 +02:00
CHANGELOG.md chore(CHANGELOG): update 2018-06-06 14:29:20 +02:00
CONTRIBUTING.md chore(CONTRIBUTING): add ES code style hint 2018-06-07 13:40:50 +02:00
LICENSE chore(project): update year in LICENSE 2017-10-07 09:19:32 +02:00
README.md docs(README): link changelog 2018-04-05 21:12:44 +02:00
index.js fix(project): correct library default export 2018-04-05 09:47:37 +02:00
package.json chore(project): bump devDependency versions 2018-06-12 09:43:03 +02:00
rollup.config.js chore(project): build pre-packaged distros with Rollup 2018-04-03 18:09:52 +02:00

README.md

bpmn-js - BPMN 2.0 for the web

Build Status

View and edit BPMN 2.0 diagrams in the browser.

bpmn-js screencast

Installation

Use the library pre-packaged or include it via npm into your node-style web-application.

Usage

To get started, create a bpmn-js instance and render BPMN 2.0 diagrams in the browser:

var xml; // my BPMN 2.0 xml
var viewer = new BpmnJS({
  container: 'body'
});

viewer.importXML(xml, function(err) {

  if (err) {
    console.log('error rendering', err);
  } else {
    console.log('rendered');
  }
});

Checkout our examples for many more supported usage scenarios.

Dynamic Attach/Detach

You may attach or detach the viewer dynamically to any element on the page, too:

var viewer = new BpmnJS();

// attach it to some element
viewer.attachTo('#container');

// detach the panel
viewer.detach();

Resources

Building the Project

Perform the following steps to build the library, including running all tests:

cd bpmn-js
npm install
npm run all

You may need to perform additional project setup when building the latest development snapshot.

Please checkout our contributing guidelines if you plan to file an issue or pull request.

bpmn-js builds on top of a few additional powerful tools:

  • bpmn-moddle: Read / write support for BPMN 2.0 XML in the browsers
  • diagram-js: Diagram rendering and editing toolkit

License

Use under the terms of the bpmn.io license.