Emlang

Event Modeling in YAML

What is Emlang?

Emlang is a text-based DSL for Event Modeling that lets you write event models in YAML. It's also a complete toolchain that validates syntax and generates HTML diagrams.

Event Modeling traditionally uses walls and visual tools for collaborative workshops. Emlang complements these practices by letting you maintain models as code—useful for documenting existing systems, writing normalized specs, or when text-based workflows fit better. See the language specification for the full syntax.

Examples

Getting Started

Install with Go:

go install github.com/emlang-project/emlang@latest

Or download a precompiled binary from the releases page.

Generate your first diagram:

emlang diagram model.yaml -o diagram.html

See the CLI Reference for the full list of commands and options.

Use Cases