Awesome
dmnlint
Validate your DMN diagrams based on configurable lint rules.
Usage
Install the utility via npm:
npm install -g dmnlint
Validate your diagrams via the command line:
> dmnlint invoice.dmn
/Projects/process-application/resources/invoice.dmn
InputData_13 error Element is missing label/name label-required
Decision_12 error Element is missing label/name label-required
ā 2 problems (2 errors, 0 warnings)
Rules
Our documentation lists all currenty implemented rules, the ./rules
folder contains each rules implementation.
Do you miss a rule that should be included? Propose a new rule.
Configuration
Create a .dmnlintrc
file in your working directory and inherit from a common configuration using the extends
block:
{
"extends": "dmnlint:recommended"
}
Add or customize rules using the rules
block:
{
"extends": "dmnlint:recommended",
"rules": {
"label-required": "off"
}
}
Visual Feedback (TODO)
Integrate the linter via dmn-js-dmnlint into dmn-js and get direct feedback during modeling.
To try out visual validation, checkout the dmnlint playground.
Writing / Consuming Custom Rules (TODO)
Use the dmnlint playground to implement new rules with quick visual feedback.
For more details on how to define and consume custom lint rules check out the dmnlint-plugin-example.
Credits
The project is based on bpmnlint
built by nikku and siffogh.
License
MIT