Docs›Start here›Introduction
Introduction
Lila Modeler is an open-source discrete-event simulator and modeler for BPMN processes. Draw the process, describe a scenario, run it with replications, and compare the result against an alternative — all on your own machine.
What Lila gives you
- One engine, everywhere. Browser, desktop, CLI and MCP share the same dependency-free core, so results match.
- Bizagi's workflow, open. Validation, time, resources and calendars as four steps; result tables in the layout Bizagi users already read.
- Numbers you can defend. Seeded replications with 95% confidence intervals, not a single run.
- Plain files. A project is a folder; scenarios are JSON; a .lila file is that folder zipped.
Feature overview
| Model | bpmn-js editor: events, timers, tasks, call activities, subprocesses, XOR/OR/AND gateways, lanes and pools |
|---|---|
| Simulate | Four steps — validation, time, resources, calendars; 13 BPSim distributions |
| Results | Process, element, resource and flow tables; bottlenecks, percentiles, cost per case |
| Animate | Replay of the event log over the diagram, from 1× to instant |
| Compare | Side-by-side scenarios with deltas significant at 95% |
| Export | JSON, CSV and multi-sheet XLSX |
| Interfaces | Web, desktop (Electron), CLI and MCP server |
Quick start
Simulate examples/pedido — a restaurant process with a parallel branch, an approval and a timer — from a fresh clone. Node 22 and npm are all you need.
1. Clone and build
git clone https://github.com/AlambritoDito/lila-modeler.git
cd lila-modeler
npm ci && npm run build
2. Validate the model
npx lila validate examples/pedido/model.bpmn
3. Simulate the AS-IS scenario
npx lila run \
examples/pedido/model.bpmn examples/pedido/as-is.scenario.json \
--seed 42 --replications 30 \
--json out/result.json --csv out/csv
4. Compare against TO-BE
npx lila compare \
examples/pedido/model.bpmn \
examples/pedido/as-is.scenario.json examples/pedido/to-be-3-cajeros.scenario.json \
--seed 42 --replications 30
The engine and CLI are on npm as
@lila-modeler/engine(betatag); the unscopedlilapackage on the registry is unrelated. Inside the checkout,npxresolves the workspace's own binary.
Next steps
Coming from Bizagi →Where each Bizagi screen and field lives here.
Scenario format →Arrivals, times, pools and calendars as JSON.
Desktop beta (macOS) →Install the macOS beta (not notarized).
Windows: the web app →Install the web app on Windows from Edge or Chrome.
✎ Edit this pageTargets v1.0.0-beta.26