All Projects → process-analytics → bpmn-visualization-js

process-analytics / bpmn-visualization-js

Licence: Apache-2.0 license
A TypeScript library for visualizing process execution data on BPMN diagrams

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to bpmn-visualization-js

Kroki
Creates diagrams from textual descriptions!
Stars: ✭ 774 (+584.96%)
Mutual labels:  bpmn, diagrams
bpmn-layout-generators
Tools for generating missing BPMNDiagram elements in BPMN files
Stars: ✭ 27 (-76.11%)
Mutual labels:  bpmn, bpmn2
Pierotateview
android自定义View,带旋转动画的饼状图,区块点击事件,滑动到某一区块事件,可惯性旋转
Stars: ✭ 113 (+0%)
Mutual labels:  view, viewer
tumbleweed
Lightweight workflow engine microservice implement BPMN 2.0
Stars: ✭ 23 (-79.65%)
Mutual labels:  bpmn, bpmn2
Wiv
Window image viewer [DEPRECATED]
Stars: ✭ 196 (+73.45%)
Mutual labels:  view, viewer
Hyena
鬣狗快速开发库(2018年6月停止维护)
Stars: ✭ 21 (-81.42%)
Mutual labels:  view
PdfViewerDemo
pdf阅读器,基于MuPDF开发,可横竖切换浏览、多种批注功能、电子签章
Stars: ✭ 103 (-8.85%)
Mutual labels:  viewer
nuts
Nuts and bolts for building cross-platform UI (HTML, Flutter, CLI) using Dart. Also screw frameworks (React, Vue, Angular).
Stars: ✭ 12 (-89.38%)
Mutual labels:  view
luke
Please use the luke bundled with lucene! This repo is archived and frozen now.
Stars: ✭ 101 (-10.62%)
Mutual labels:  viewer
php-mvc
Mini framework para aplicaciones PHP con el patrón MVC
Stars: ✭ 35 (-69.03%)
Mutual labels:  view
virtex
A three.js object viewer written in TypeScript
Stars: ✭ 14 (-87.61%)
Mutual labels:  viewer
MultiPartProgressbar
A progressbar which contains different parts of progress.
Stars: ✭ 15 (-86.73%)
Mutual labels:  view
coco-viewer
Simple COCO Viewer in Tkinter
Stars: ✭ 65 (-42.48%)
Mutual labels:  viewer
pvm-ui
JS based UI for PVM workflow engine.
Stars: ✭ 18 (-84.07%)
Mutual labels:  bpmn
Observable
A generic ObservableObject for every property!
Stars: ✭ 41 (-63.72%)
Mutual labels:  view
Hidely
Custom Views that can hide/show a View with some Animations (inspired by the Android FAB)
Stars: ✭ 46 (-59.29%)
Mutual labels:  view
Custom-Grid-View
Custom Drag and Drop Grid for Home Assistant
Stars: ✭ 103 (-8.85%)
Mutual labels:  view
Chord-Draw
Draw guitar chord diagrams for all variations of any chord and also display finger positions etc.
Stars: ✭ 17 (-84.96%)
Mutual labels:  diagrams
MVVM-Design-Pattern-Demo
An Xcode 9 project written in Swift 4 code designed using the MVVM design pattern, truly extolling the virtues of MVVM over MVC.
Stars: ✭ 31 (-72.57%)
Mutual labels:  view
bpxe
Business Process eXecution Engine
Stars: ✭ 36 (-68.14%)
Mutual labels:  bpmn

BPMN Visualization


bpmn-visualization is a TypeScript library for visualizing process execution data on BPMN diagrams with:

  • additional display options for execution data (highlight some transitions, counters, and more)
  • interactive capacities (mouse hover, click)

🎮 Demo and examples

Please check the live environment.

You will find there basic usage as well as detailed examples showing possible rendering customizations.

🔆 Project Status

bpmn-visualization is actively developed and maintained.

Before the release of version 1.0.0, there may be some breaking changes. We avoid these as much as possible, and carefully document them in the release notes. As far as possible, we maintain compatibility for some minor versions.

🤩 Why using bpmn-visualization?

  • True opensource license without watermark display
  • ⚡️ Strong identity: the only BPMN viewer with a woman icon in the User Tasks
  • 🎸 Fully documented and with a lot of integration examples
  • 👓 Highly customizable rendering in a simple way
  • 🔥 TypeScript support
  • 🎯 Battle tested: high test coverage, thousands of tests, including tests on all supported browsers for Linux, macOS and Windows

🎨 Features

Already available features:

Planned features:

  • Additional BPMN styling capabilities
  • Library extension points

🌏 Browsers Support

Chrome Chrome Firefox Firefox Safari Safari Edge Edge
✔️ ✔️ ✔️ ✔️

Notes:

  • Chromium based browsers should work (automatic tests are run with Chromium canary releases). In particular, the following browsers are known working with [email protected]:
    • Brave 1.42.97
    • Chromium 104.0.5112.102
    • Opera 90.0.4480.54
  • Support Chromium Edge but not Legacy Edge
  • The library may work with the other browsers. They must at least support ES6.

♻️ Usage

The library is available from NPM.
We support various module formats such as:

  • IIFE: dist/bpmn-visualization.js
  • ESM: dist/bpmn-visualization.esm.js
  • CommonJS: dist/bpmn-visualization.cjs.js

📌 Project usage

Install bpmn-visualization in the project:

npm i bpmn-visualization

Then use this snippet to load your BPMN diagram in a page:

import { BpmnVisualization } from 'bpmn-visualization';

let bpmnContent; // your BPMN 2.0 XML content
// initialize `bpmn-visualization` and load the BPMN diagram
// 'bpmn-container' is the id of the HTMLElement that renders the BPMN Diagram
const bpmnVisualization = new BpmnVisualization({ container: 'bpmn-container' });
bpmnVisualization.load(bpmnContent);

You can set the BPMN content using one of the following ways:

  • Copy/Paste directly the XML content in a variable
  • Load it from an url, like this example
  • Load from your computer, like the demo example

📜 TypeScript Support

The bpmn-visualization npm package includes type definitions, so the integration works out of the box in TypeScript projects. bpmn-visualization requires TypeScript 4.5 or greater.

ℹ️ If you are looking for examples of projects integrating bpmn-visualization with TypeScript, see the bpmn-visualization-examples repository.


NOTE

Prior version 0.27.0, bpmn-visualization required extra configuration for TypeScript projects as explained in the v0.26.2 README.


💠 Browser usage

In the HTML page:

  • Load bpmn-visualization (replace {version} by the recent version)
  • Define the container that displays the BPMN diagram, here bpmn-container
  • Load your BPMN diagram in a page
<script src="https://cdn.jsdelivr.net/npm/bpmn-visualization@{version}/dist/bpmn-visualization.min.js"></script>
...
<div id="bpmn-container"></div>
...
<script>
  let bpmnContent; // your BPMN 2.0 XML content
  // initialize `bpmn-visualization` and load the BPMN diagram
  // 'bpmn-container' is the id of the HTMLElement that renders the BPMN Diagram
  const bpmnVisualization = new bpmnvisu.BpmnVisualization({ container: 'bpmn-container'});
  bpmnVisualization.load(bpmnContent);
</script>

👤 User documentation

The User documentation (with the feature list & the public API) is available in the documentation site.

⚒️ More

💡 Want to know more about bpmn-visualization usage and extensibility? Have a look at the live examples site.

For more technical details and how-to, go to the bpmn-visualization-examples repository.

🔧 Contributing

To contribute to bpmn-visualization, fork and clone this repository locally and commit your code on a separate branch.
Please write tests for your code before opening a pull-request:

npm run test  # run all unit & e2e tests

You can find more detail in our Contributing guide. Participation in this open source project is subject to a Code of Conduct.

A BIG thanks to all our contributors 🙂

📃 License

bpmn-visualization is released under the Apache 2.0 license.
Copyright © 2020-present, Bonitasoft S.A.

Some BPMN icons used by bpmn-visualization are derived from existing projects. See the BPMN Support documentation for more details:

Powered by

statically.io logo

statically.io (demo and examples live environments)

surge.sh logo

surge.sh (demo and documentation preview environments)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].