The best free Plugins for Camunda’s BPMN 2 Modeler
Last updated: 03/03/2021
Out of the box Camunda’s BPMN 2 Modeler is intentionally kept simple and lightweight. Instead of feature bloat it offers a plugin system, allowing flexible customization and extension according to individual use cases and preferences. The popular extension mechanism has led to a variety of (unfortunately) proprietary, internal, or free, publicly available, open-source community plugins.
This post lists “the best” free and publicly available plugins. No attempt to derive objective criteria was made. The selection is completely subjective, based solely on my experience. Your use cases and preferences may differ.
While all plugins listed here work with the current Modeler version 4.6.0, the usability, or integration into the modeler UI of some leaves room for improvement. They are open source so feel free to contribute.
Non of these plugins are officially maintained or endorsed by Camunda. However, the plugin mechanism seems very stable and most plugins remained usable over the last few modeler versions without issues or updates.
Plugin Installation
The plugins have been published in different GitHub locations, partly nested, as part of a parent project. If you want to quickly give all of the listed plugins a spin, and then possibly delete those not needed, you can simply either
a) navigate to the installation folder mentioned below and
git clone https://github.com/rob2universe/plugins
b) download a ZIP from https://github.com/rob2universe/plugins/releases/
and extract its contents into the plugins folder.
I created this repository for a convenient, faster installation of all plugins and will check occasionally for updates upstream, but do not guarantee to mirror the latest version (switch he original source referenced below instead).
In general a plugin can be installed by downloading and extracting or cloning the sources with Git into the plugins-directory {path_to_modeler}/plugins
. However, the preferable approach is to place the plugins intoC:\Users\{user_name}\AppData\Roaming\camunda-modeler\resources\plugins
(Windows) or /Users/{user_name}/Library/Application Support/camunda-modeler/plugins
(Mac OS)
This preserves the plugins when the modeler installation is replaced with a new version and allows to use the plugins from several installed versions.
THE TOP FIVE
Transaction Boundaries
The save or commit points / transaction boundaries, introduced either implicitly by certain model elements (wait states) or explicitly via the async before /after settings, have a significant impact on the process model execution. Hence, it is important to understand where in the process model transaction boundaries exist. This plugin visualizes them with a T symbol.
Home: https://github.com/camunda/camunda-modeler-plugins/tree/master/camunda-transaction-boundaries-plugin
git clone https://github.com/camunda/camunda-modeler-plugins.git
ZIP Download (latest code; remove unwanted plugins,
keep camunda-transaction-boundaries-plugin)
Model Validation / Linter
This bpmnlint-based plugin adds the default model validation rules by Camunda to the Modeler, but also provides its own plugin mechanism, allowing to register custom rules.
Home: https://github.com/camunda/camunda-modeler-linter-plugin
git clone https://github.com/camunda/camunda-modeler-linter-plugin.git
Tool Tips
This extremely useful plugin adds tool tips showing important element properties, such as condition on sequence flows, message or signal names, or expressions, to the BPMN elements.
Home: https://github.com/viadee/camunda-modeler-tooltip-plugin
git clone https://github.com/viadee/camunda-modeler-tooltip-plugin.git
Rename Technical Identifiers
When automating process or during their testing with Camunda, the technical IDs of many BPMN elements are used frequently. The IDs generated by the modeler by default do not reflect the element name, which makes it harder to identify the element based on its ID. Manually changing the IDs and applying a consistent patter is cumbersome. This plugin generates readable technical IDs based on the element name / visible label.
git clone https://github.com/camunda-consulting/code.git
use files in code\snippets\camunda-modeler-plugins or apply git filter
ZIP Download (latest code; manually remove unwanted plugins,
keep bpmn-js-plugin-rename-technical-ids)
Camunda Property Info
The plugin visualizes the Camunda-specific properties: Input, Output, Variable, Listener, Task Listener, Extension, Field Injection, Is (not) Executable using overlays on the BPMN 2 diagram.
Home: https://github.com/umb/camunda-modeler-property-info-plugin
git clone https://github.com/umb/camunda-modeler-property-info-plugin.git
ZIP Download (latest code, master)
HONORABLE MENTIONS
WYSIWYG Documentation
The model documentation field is extended with WYSIWYG text editor, allowing to create HTML documentation embedded inside the BPMN file.
Home: https://github.com/sharedchains/camunda-wysiwyg-documentation
git clone https://github.com/sharedchains/camunda-wysiwyg-documentation.git
ZIP Download (latest code, master)
Token Simulation
This plugin simulates the token creation, flow and consumption of tokens in a BPMN 2 process model. While the functionality currently does not cover more complex elements or models, the plugin is popular with training participants, trainers or less experienced BPMN practitioners to clarify how different BPMN elements affect the token flow.
Home: https://github.com/bpmn-io/bpmn-js-token-simulation-plugin
Download Page (latest code, master)
git clone https://github.com/bpmn-io/bpmn-js-token-simulation-plugin.git
Color picker
Opinions on the usage of colors in BPMN2 diagrams differ and the standard modeler already offers an icon to set a menu color. Anyway, if you need more colors or more choice, this plugin got you covered.
Generated Form Preview and Generator
If from fields are specified Camunda Tasklist will automatically generate corresponding task forms when the process is started or the user task is opened via Tasklist. This Modeler plugin allows to preview the generated forms and to generate the HTML code of this form, so it can be used as a starting point for a custom HTML embedded task form.
git clone https://github.com/camunda/camunda-modeler-plugins.git
ZIP Download (latest code; manually remove unwanted plugins,
keep camunda-modeler-plugin-usertask-generatedform-preview)
Currently this plugin is not compatible wit the process I/O specification plugin. You need to remove this plugin (delete the sub folder) for the “Preview Forms” button to appear.
Multi-Diagram
Currently broken on Modeler 4.6
This plug-in allows to manage multiple process models in a single bpmn file and to link a Call Activity to a processes within the same bpmn file.
Home: https://github.com/sharedchains/camunda-modeler-plugin-multidiagram
git clone https://github.com/sharedchains/camunda-modeler-plugin-multidiagram.git
ZIP Download (latest code, master)
Process I/O Specification
The plugin adds an I/O Specification
tab to the BPMN editor’s properties panel, allowing the specification of the inputs and outputs of a process. The information is useful as an interface specification e.g. when invoking a process as a service, by execution or task listeners or for documentation purposes.
Home: https://github.com/camunda/camunda-modeler-process-io-specification-plugin
git clone https://github.com/camunda/camunda-modeler-process-io-specification-plugin.git
Auto-Save
If you would like the Camunda Modeler to automatically save changes in a user-defined interval, then this is the plugin for you.
For plugin developers this plugin also serves as an example on how to extend the Modeler’s user interface with a React component.
Home: https://github.com/pinussilvestrus/camunda-modeler-autosave-plugin
git clone https://github.com/pinussilvestrus/camunda-modeler-autosave-plugin.git
Zip Download (latest code, master)
DMN Excel Import
The plugin imports the columns of an Excel sheet into a DMN file.
Home: https://github.com/pinussilvestrus/camunda-modeler-excel-import-plugin
git clone https://github.com/pinussilvestrus/camunda-modeler-excel-import-plugin.git
Zip Download (latest code, master)
Modeler internationalization
The plugin allows to translate the UI of the Camunda Modeler. It contains translations for German, English and Portuguese. Additional languages can be extended easily.
Home: https://github.com/FlowSquad/camunda-modeler-i18n-plugin
git clone https://github.com/FlowSquad/camunda-modeler-i18n-plugin.git
Download ZIP (latest code, master)
Known Issues
The Transaction boundary plugin needs to be updated to the latest version to work with Modeler version ≥ 4.6.0.
Form Preview and Generator and process I/O specification plugin cannot be used together. The preview button will be missing.
Multi-Diagram and UI Preview and Generator plugins are broken at least on Modeler 4.5 and 4.6.
Plugin Development
To learn how to create your own Modeler plugin checkout these resources:
https://github.com/camunda/camunda-modeler-plugin-example
https://github.com/camunda/camunda-modeler/tree/master/docs/plugins