Architecture that compiles.
One source. Any diagram. Readable for humans and AI.
Website: https://kuml.dev · Handbook: https://docs.kuml.dev · Releases: https://github.com/kuml-dev/kUML/releases
kUML is a modelling tool that expresses UML 2.x, SysML 2, C4 and BPMN 2.0 as a type-safe Kotlin DSL — the first UML tool deliberately designed for the LLM era.
Modeling deserves a compiler.
Every feature in kUML exists in some tool on the market. The specific combination does not exist anywhere else: type-safe Kotlin DSL · UML 2.x + SysML 2 + C4 + BPMN 2.0 as first-class peers · executable behaviour runtime · LLM-first design · Apache 2.0.
Existing UML tools fall into two categories:
-
Graphical CASE tools (Enterprise Architect, MagicDraw) — proper modelling, but expensive and not Git-friendly.
-
Text-based diagram tools (PlantUML, Mermaid) — versionable, but drawing tools only with weak UML support.
kUML closes this gap: a real modelling tool, expressed as Kotlin source code, fully versionable in Git, and built from the ground up for LLM-assisted workflows.
There are dozens of UML, SysML and architecture tools. None of them fill these two quadrants:
-
No serious modelling tool runs on a typed host language. There are Python diagram libraries, Java APIs around EMF, custom text grammars by the dozen. There is no mature tool that treats the model as ordinary code in a modern, statically-typed language with IDE refactoring, compile-time checking, and natural build-system integration. kUML uses Kotlin’s type-safe builders because they are the cleanest fit available — the principle, not the language choice, is the point.
-
No tool is designed for the LLM era. PlantUML and Mermaid happen to be LLM-friendly because they have enormous training footprints. That is luck, not design. kUML is built for AI-assisted modelling on purpose: type-safe output that compiles or fails fast, consistent named parameters, an MCP server for agent introspection, a
kuml aisubcommand, and a benchmark that measures how often LLM-generated models actually validate.
// order-domain.kuml.kts — no imports needed, kUML scripting host provides them
classDiagram(name = "Order Domain") {
val status = enumOf(name = "OrderStatus") {
literal(name = "DRAFT")
literal(name = "CONFIRMED")
literal(name = "SHIPPED")
literal(name = "CANCELLED")
}
val order = classOf(name = "Order") {
attribute(name = "id", type = "UUID")
attribute(name = "status", type = status) // enum val used as attribute type
operation(name = "confirm")
operation(name = "cancel")
}
val orderItem = classOf(name = "OrderItem") {
attribute(name = "quantity", type = "Int")
attribute(name = "unitPrice", type = "BigDecimal")
}
association(source = order, target = orderItem) {
aggregation = AggregationKind.COMPOSITE
source { multiplicity(spec = "1") }
target { multiplicity(spec = "1..*"); role = "items" }
}
}kuml render order-domain.kuml.kts --format svgThat command produces the diagram below — rendered straight from the script above with ELK Sugiyama layout and the kUML theme:
| Method | Command / Link |
|---|---|
Homebrew (macOS/Linux) |
|
Chocolatey (Windows) |
|
SDKMAN! (coming soon) |
|
Docker |
|
Native installers |
DEB, RPM, DMG, MSI packages built by the |
Maven Central (library modules) |
|
| Feature | Description |
|---|---|
Type-safe DSL |
UML 2.x, SysML 2, C4 and BPMN 2.0 as idiomatic Kotlin — compile-time validation, full IDE support. |
LLM-native |
Named parameters, canonical formatter, structured JSON errors, MCP server — designed for reliable LLM code generation. |
Model Driven Architecture |
M2M transformations (Design → Implementation → Deployment) and M2T code generation. Five built-in transformers: |
Pure Kotlin metamodel |
No EMF in the core — |
OCL subset |
Object Constraint Language constraints directly on the Kotlin model. |
Built-in UML profiles |
Five profiles ship with v0.3.0 — AUTOSAR (Classic Platform R22-11), JavaEE / Jakarta EE, Spring, OpenAPI, SoaML. Discovered through |
Web UI (Browser) |
|
Snapshot / Restore |
|
Interactive execution ( |
Drive state machines and activity diagrams interactively. Three adapters: |
Reverse Engineering |
|
XMI Import / Export |
Full bidirectional XMI (Eclipse EMF/UML2) via |
AI Assistant |
|
AI Assistant SPI |
|
Plugin Ecosystem |
|
BPMN 2.0 first-class |
Process, Collaboration, Events (Event-Matrix: 13 definitions × 3 positions × 2 behaviours), Gateways (5 types), Tasks (7 types), Sub-Processes, Call Activities, Pools, Lanes, Message Flows. DSL (@BpmnDsl), SVG renderer with all OMG symbols, BPMN 2.0 XML import/export (XXE-safe), LaTeX/TikZ renderer. Constraint checker with 7 rules. |
BPMN 2.0 XML Import/Export |
|
C4 + BPMN LaTeX/TikZ Renderer |
|
Diagram Fixes (v0.17.0) |
State Machine: composite states render correctly with nested sub-states and entry/exit pseudo-state connectors. Deployment Diagram: nested nodes (artefact-in-node-in-node) are now laid out with proper containment borders. IBD (SysML 2 Internal Block Diagram): boundary ports on the outer block frame are positioned on the correct edge and no longer overlap internal connectors. |
CosmWasm Chain Adapter ( |
Connect behaviour-runtime state machines to live Cosmos SDK / CosmWasm smart contracts. |
WASM / ink! Chain Adapter ( |
Connect behaviour-runtime state machines to Substrate-based WASM smart contracts (ink!, Polkadot, Astar, Moonbeam). |
User Journey Maps ( |
Model end-to-end customer experiences as a four-layer Service Blueprint: Customer Actions / Frontstage / Backstage / Support Processes, separated by the three standard dividing lines. Each step carries an optional |
JetBrains Plugin (Marketplace) |
|
Outer UML Diagram Frame |
All 33 diagram types now render with a standard outer UML frame (rectangle with a name tab in the top-left corner), consistent with the UML 2.x notation specification. (v0.19.0) |
SMIL Animation ( |
Render any state machine (UML STM, SysML 2 STM, UML Activity) or BPMN process diagram as an animated SVG that plays back an execution trace in the browser. Pure SMIL — no JavaScript. |
SMIL cross-browser fix (v0.20.1) |
Animated SVGs now play in Chrome and Safari in addition to Firefox. |
|
Rendering without an explicit |
AUTOSAR / ARXML I/O |
|
C# Reverse Engineering |
|
EMF Profile Conversion |
|
EVM Chain Adapter ( |
Connect |
BPMN ⇌ UML Activity M2M Bridge |
|
kUML implements all 14 UML 2.x diagram types as first-class peers alongside SysML 2 and C4:
| Diagram type | Description | Simulate |
|---|---|---|
Class Diagram |
Classes, interfaces, enumerations, associations, generalisations, dependencies, realisations |
— |
Object Diagram |
Snapshots of instance-level object graphs and slot values |
— |
Package Diagram |
Package hierarchy, imports, merges, and namespace dependencies |
— |
Component Diagram |
Logical components, provided/required interfaces, and connectors |
— |
Composite Structure Diagram |
Internal part/port structure of a classifier and its connectors |
— |
Deployment Diagram |
Node topology, artefact deployment, and communication paths |
— |
Profile Diagram |
Metaclass extensions, stereotypes, tagged values, and constraints |
— |
Use Case Diagram |
Actor/use-case relationships, include/extend associations, and system boundaries |
— |
Activity Diagram |
Token-flow activity semantics, partitions (swimlanes), decision and fork/join nodes |
✅ |
State Machine Diagram |
Hierarchical state machines with guards, effects, internal transitions, and history pseudo-states |
✅ |
Sequence Diagram |
Lifeline interactions, synchronous/asynchronous messages, and Combined Fragments (alt/opt/loop/par) |
— |
Communication Diagram |
Object interactions with numbered message flows along associations |
— |
Timing Diagram |
State/condition timelines across multiple lifelines with timing constraints |
— |
Interaction Overview Diagram |
Control flow overview combining activity and sequence diagram fragments |
— |
kUML implements all 8 SysML 2 diagram types as first-class peers alongside UML 2.x and C4:
| Diagram type | Description | Simulate |
|---|---|---|
BDD — Block Definition Diagram |
System structure, blocks, value properties, associations |
— |
IBD — Internal Block Diagram |
Internal connections and port bindings |
— |
UC — Use Case Diagram |
Actor/use-case relationships in system context |
— |
REQ — Requirements Diagram |
Requirement hierarchy, satisfy/refine/derive traces |
— |
STM — State Machine Diagram |
Hierarchical state machines with guards and effects |
✅ |
ACT — Activity Diagram |
Token-flow activity semantics with partitions (swimlanes) |
✅ |
SEQ — Sequence Diagram |
Lifeline interactions with Combined Fragments |
— |
PAR — Parametric Diagram |
Constraint blocks and parametric equations |
— |
Notable features added since v0.5.0:
-
kuml simulatesupports SysML 2 STM (V2.0.17) and ACT (V2.0.18) end-to-end — event-driven state-machine execution and token-flow activity simulation. -
Combined Fragments (alt, opt, loop, par, …) in SEQ diagrams (V2.0.15).
-
Activity Partitions / Swimlanes in ACT diagrams (V2.0.16).
-
Typed expression validation (
kuml validate --strict) parses OCL-like guards, effects, and PAR constraints through a typed AST with type inference (V2.0.20b). -
Web UI LaTeX download —
POST /api/renderinkuml serveacceptsformat = "latex"for all 10 diagram types, including all 8 SysML 2 kinds (V2.0.36). -
Snapshot/Restore for SysML 2 —
snapshotFull/restoreFrompreserve complete runtime state for SysML 2 STM and ACT instances (V2.0.35). -
kuml runSysML 2 support — all three adapters (stdin / mcp / batch) accept SysML 2 STM and ACT scripts (V2.0.38).
kUML implements all 6 C4 diagram types as first-class peers alongside UML 2.x and SysML 2:
| Diagram type | Description |
|---|---|
Context Diagram |
System boundaries, external actors (persons and external systems), and their relationships |
Container Diagram |
Applications, services, and databases within a system boundary and their interactions |
Component Diagram |
Internal components within a container and their dependencies |
Deployment Diagram |
Deployment topology with nodes, infrastructure elements, and container instances |
Dynamic Diagram |
Numbered interaction sequences between persons, systems, containers, or components |
Landscape Diagram |
Multi-system enterprise overview — persons and systems across organisational boundaries |
Structurizr DSL round-trip is supported via kuml import --format structurizr and kuml export --format structurizr, allowing interoperability with existing Structurizr workspaces.
| Feature | kUML | PlantUML | Mermaid | D2 | Structurizr | MagicDraw | Modelio | Diagrams (Py) |
|---|---|---|---|---|---|---|---|---|
UML 2.x (all diagram types) |
✅ |
❌ |
❌ |
❌ |
✅ |
✅ |
❌ |
|
SysML 2 first-class |
✅ |
❌ |
❌ |
❌ |
❌ |
|||
C4 first-class |
✅ |
❌ |
✅ |
❌ |
❌ |
|||
BPMN 2.0 first-class |
✅ |
❌ |
❌ |
❌ |
❌ |
❌ |
||
Type-safe DSL |
✅ |
❌ |
❌ |
❌ |
❌ |
❌ |
||
Real metamodel |
✅ |
❌ |
❌ |
❌ |
✅ |
✅ |
✅ |
❌ |
OCL constraints |
✅ |
❌ |
❌ |
❌ |
❌ |
✅ |
✅ |
❌ |
AUTOSAR profile (built-in) |
✅ |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
|
Built-in UML profiles (5) |
✅ |
❌ |
❌ |
❌ |
❌ |
❌ |
||
Code generation (M2T) |
✅ |
❌ |
❌ |
❌ |
✅ |
✅ |
❌ |
|
MDA transforms (M2M) |
✅ |
❌ |
❌ |
❌ |
❌ |
✅ |
❌ |
|
Executable behaviour simulation |
✅ |
❌ |
❌ |
❌ |
❌ |
◐ |
❌ |
❌ |
M2M code generation (transformers) |
✅ |
❌ |
❌ |
❌ |
❌ |
◐ |
◐ |
❌ |
Typed expression validation |
✅ |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
|
Git-native |
✅ |
✅ |
✅ |
✅ |
✅ |
❌ |
✅ |
|
Open source |
✅ |
✅ |
✅ |
✅ |
❌ |
✅ |
✅ |
|
LLM-first design |
✅ |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
CLI + Gradle + IDE + Web |
✅ |
✅ |
✅ |
|||||
Beautiful auto-layouts |
✅ |
❌ |
✅ |
✅ |
✅ |
|||
Grid layout (opt-in, experimental) |
✅ |
❌ |
❌ |
❌ |
❌ |
|||
M2M code generation (5 transformers) |
✅ |
❌ |
❌ |
❌ |
❌ |
◐ |
◐ |
❌ |
Native installers (DEB/RPM/DMG/MSI/Docker) |
✅ |
❌ |
❌ |
❌ |
❌ |
✅ |
◐ |
❌ |
✅ present ·
-
Modelling depth, Git-versionability and LLM friendliness in one tool. Nobody else combines all three.
-
Type-safe DSL as the model substrate — structurally superior for toolchain integration and AI-assisted generation.
-
UML, SysML 2, C4 and BPMN 2.0 as equal first-class languages. Every other tool forces you to pick one.
-
Apache 2.0 with a modern stack (Kotlin, GraalVM Native Image, Compose). No Eclipse legacy.
-
Designed for the LLM era from day one — structural, not accidental, fitness for AI-assisted modelling.
-
PlantUML’s ecosystem is enormous — wikis, IDEs, AsciiDoc tooling, CI plugins. kUML builds bridges (AsciiDoc extension, Gradle plugin, IDE plugins) rather than fighting on volume.
-
Structurizr owns C4 emotionally. kUML offers Structurizr DSL round-trip — interoperate, don’t compete.
-
Mermaid has GitHub-native rendering — the lowest possible barrier. kUML targets value from step two onward.
-
MagicDraw and Cameo dominate enterprise automotive — but their AUTOSAR support is a paid add-on. kUML ships the AUTOSAR profile in the box (v0.3.0):
«SoftwareComponent»with kind/packageName,«ComInterface»with version/isService,«AutosarPort»with direction (D17 — deliberately notPortto avoid the UML metaclass clash),«Runnable»with periodic/event-triggered/init/shutdown kinds, and«BehaviorSpec»on state machines feeding intokuml simulatefor trace-based RTE verification.
| Command | Description |
|---|---|
|
Render a |
|
Re-render on file change; 500 ms polling, never exits on script errors. |
|
Evaluate OCL |
|
Emit script compile/eval diagnostics with source locations as TSV ( |
|
Idempotent text formatter for |
|
Code generation via plugin ( |
|
Import a diagram from another format: |
|
Export a model to another format: |
|
Reconstruct a UML class diagram from existing source code. |
|
Render |
|
Emit shell completion scripts for |
|
Execute a simulation trace against a UML or SysML 2 behavioural model. Supports STM (state-machine semantics) and ACT (token-flow activity semantics) for both UML and SysML 2. SysML 2 STM added in V2.0.17; SysML 2 ACT added in V2.0.18. |
|
M2M transformation: transform a source model to a target artefact. Five built-in transformers: |
|
Override the per-diagram layout engine. |
|
Produce a self-contained compilable |
|
Skip structural checks (duplicate IDs, circular inheritance, dangling references). By default |
|
Extended validation mode (V2.0.20b): in addition to model consistency checks, parses and type-checks typed expressions — OCL-like guards, effects, and PAR constraints — through a typed AST with type inference. |
|
Start the kUML Web UI — a Ktor/Netty HTTP server with a CodeMirror 6 browser editor, 300 ms live SVG preview, theme and layout dropdowns, and SVG / PNG / LaTeX download buttons. Added in V2.0.34. |
|
Interactive and live-mirror execution of state machines and activity diagrams. |
|
List all registered profiles, inspect a specific profile’s stereotypes and tagged values, or validate a model against a profile’s constraints. |
|
Poll GitHub Releases for the latest version ( |
|
Scaffold a new plugin project for the given category. Generates |
|
Update a locally installed plugin to its latest published version ( |
|
Search the Plugin Registry for published plugins; shows ratings, review count, and screenshot previews in the terminal. (V3.1.x) |
|
Run the LLM accuracy benchmark against a registered provider (or all providers if |
|
Display per-token input/output cost tables for all configured LLM providers (or a specific one). Reads live pricing from the provider SPI. (V3.1.x) |
|
Print the installed kUML version and build metadata. |
| Phase | Scope | Status |
|---|---|---|
Phase 0 |
Gradle multimodule setup, Kotlin Scripting host, |
✅ Done |
Phase 1 |
UML metamodel + UML DSL (5 diagram types: class, sequence, state, component, use-case) |
✅ Done |
Phase 2 |
CLI ( |
✅ Done |
V1.0.1 |
|
✅ Done ( |
V1.1 |
All 9 remaining UML 2.x diagram types (object ✅, package ✅, composite-structure ✅,
deployment ✅, profile ✅, activity ✅, communication ✅, timing ✅, interaction-overview ✅) |
✅ Done ( |
V2 |
SysML 2 (all 8 diagram types ✅) + |
✅ Done ( |
V3.0 |
|
✅ Done ( |
V3.x |
Plugin ecosystem — |
✅ Done (v0.12.0–v0.19.0) |
kuml-core/
kuml-core-model ✅ Sealed Kotlin metamodel base types
kuml-core-dsl ✅ DSL builders: UML (14 diagram types) + C4 (6 builders) + SysML 2 (8 diagram types)
kuml-core-script ✅ Kotlin Scripting host + KumlScriptDefinition + DiagramExtractor
kuml-core-config ✅ kuml.config.kts DSL + Script Host (V1.1.3)
kuml-core-ocl ✅ OCL subset interpreter
kuml-core-expr ✅ Typed Expression AST + Parser + Evaluator (V2.0.20a)
kuml-metamodel/
kuml-metamodel-uml ✅ UML 2.x sealed hierarchy (all 14 diagram types)
kuml-metamodel-c4 ✅ C4 sealed hierarchy + C4Model (all 6 diagram types)
kuml-metamodel-kerml ✅ KerML foundation for SysML 2 (V2.0.3)
kuml-metamodel-sysml2 ✅ SysML 2 on KerML (all 8 diagram types, V2.0.3+)
kuml-metamodel-bpmn ✅ BPMN 2.0 sealed hierarchy — Process, Collaboration, Events
(Event-Matrix: 13 definitions × 3 positions), Gateways (5 types),
Tasks (7 types), SubProcess, CallActivity, Pool, Lane, MessageFlow
BpmnConstraintChecker (7 rules), DSL (@BpmnDsl, V3.1.1–V3.1.6)
kuml-renderer/
kuml-layout-api ✅ Engine-agnostic layout contract (LayoutGraph, LayoutResult, EdgeRoute)
kuml-layout-bridge ✅ KumlDiagram / C4 / SysML 2 / BPMN → LayoutGraph bridge (BpmnLayoutBridge V3.1.3)
kuml-layout-elk ✅ ELK 0.11.0 adapter (Sugiyama layered, default)
kuml-layout-grid ✅ Pure-Kotlin grid layout engine (V1.1.12)
kuml-kuiver ✅ Compose Multiplatform renderer backend
kuml-themes-core ✅ Framework-neutral theme data
kuml-themes ✅ 4 themes: Plain, kUML, Elegant, Playful
kuml-io/
kuml-io-svg ✅ Direct SVG writer (GraalVM-ready) — UML, SysML 2, C4, BPMN
BPMN: all OMG symbols (Events, Gateways, Tasks, Swimlanes,
MessageFlow), BpmnLayoutBridge (V3.1.3+V3.1.5)
kuml-io-png ✅ SVG → PNG via Apache Batik 1.19 (Fat-JAR only)
kuml-io-json ✅ Model persistence via kotlinx.serialization
kuml-io-latex ✅ LaTeX / TikZ export — UML, SysML 2, C4 (V3.1, all 5 diagram types,
10 styles), BPMN (V3.1.8, all flow-node types, 15 kuml-bpmn-* styles)
kuml-io-bpmn ✅ BPMN 2.0 XML Import/Export (V3.1.7)
BpmnXmlExporter: OMG namespace, no JAXB, XSS-safe (xmlAttr/xmlText)
BpmnXmlImporter: namespace-aware DOM, XXE-protected
BpmnXml convenience API: export(model) / import(xml/stream)
kuml-io-emf ✅ XMI import/export via Eclipse EMF/UML2 (JVM-only, V3.0.15–17)
kuml import --format xmi / kuml export --format xmi
Full bidirectional: Class, Interface, Enum, Association,
Generalization, InterfaceRealization, Dependency
kuml-codegen/
kuml-codegen-api ✅ KumlCodeGenerator plugin interface (ServiceLoader SPI)
kuml-codegen-m2m ✅ M2M Transformer Foundation: KumlTransformer, rule-DSL,
5 built-in transformers (V2.0.21+)
kuml-gen-kotlin ✅ Kotlin code generator (data class / interface / enum)
kuml-gen-java ✅ Java POJO / Records / Lombok generator
kuml-gen-sql ✅ SQL DDL generator (Postgres / MySQL / H2 / SQLite)
kuml-codegen-reverse-api ✅ Language-agnostic KumlReverseEngine interface (V3.0.7)
kuml-codegen-reverse-java ✅ JavaParser-based Java → UML engine (V3.0.7)
kuml-codegen-reverse-kotlin ✅ Kotlin Compiler PSI → UML engine (V3.0.8)
kuml-runtime/
kuml-runtime-core ✅ StateMachineRuntime + ActivityRuntime + Snapshot/Restore + MigrationPolicy
kuml-runtime-trace ✅ Trace replay + OTLP-JSON export (V2.0.39)
kuml-runtime-sandbox ✅ Sandbox guarantees: EffectExecutor, TimeLimitedGuardEvaluator,
SandboxValidator (V2.0.40)
kuml-mcp/ ✅ MCP server — stdio JSON-RPC 2.0
Authoring tools (5): kuml.diagram.*
Runtime tools (5): kuml.run.start / event / snapshot / patch / stop
kuml-web/ ✅ Browser-based editing environment (V2.0.34)
Ktor/Netty HTTP + CodeMirror 6 SPA + SVG/PNG/LaTeX REST API
kuml-widget/
kuml-widget-compose ✅ Executable behaviour widget (Compose Multiplatform, V2.0.43)
kuml-desktop/ ✅ Compose Desktop app (V3.0.10–14)
Editor (RSyntaxTextArea) + Live preview (JSVGCanvas/Batik)
File I/O + MRU recent-files + persistent settings
Plugin Manager UI (ServiceLoader introspection)
jpackage distribution: DMG / MSI / DEB / RPM
kuml-ai/
kuml-ai-core ✅ Koog-based AI agent: Multi-LLM executor (OpenAI, Anthropic,
Google, DeepSeek, OpenRouter, Ollama), API key vault (V3.0.22)
Master-password vault (AES-256-GCM), compliance audit log,
multi-agent orchestration pipeline (V3.1.x)
kuml-ai-tools ✅ @Tool DSL builder suite + MCP bridge + AgentEditingContext (V3.0.23)
kuml-ai-spi ✅ KumlLlmProviderSpi (custom LLM providers via ServiceLoader) +
KumlToolSetFactory (custom agent tool sets) +
`kuml ai bench` accuracy benchmark + `kuml ai pricing` cost tables (V3.1.x)
kuml-plugin/
kuml-plugin-api ✅ Plugin marketplace SPI: KumlPlugin, KumlPluginDescriptor,
ServiceLoader-based discovery (V3.1.x)
kuml-plugin-registry ✅ Plugin Registry client: search, ratings, reviews, screenshots,
`kuml plugin search` CLI + Desktop Plugin Manager UI (V3.1.x)
kuml-cli/ ✅ Command-line interface (all commands above)
kuml-gradle/ ✅ Gradle plugin (plugin ID: dev.kuml)
Tasks: kumlRender, kumlGenerate, kumlValidate (@CacheableTask)
kuml-jetbrains/ ✅ JetBrains IDE plugin (IntelliJ IDEA 2024.3+)
Annotator + 4 quick fixes, live SVG preview, structure view, code folding
kuml-vscode-plugin/ ✅ VS Code extension
TextMate grammar + DSL snippets + kUML: Render to SVG
kuml-llm/
kuml-llm-core ✅ LlmBackend interface
kuml-llm-anthropic ✅ Claude API backend
kuml-llm-bench ✅ 10-task benchmark suite
kuml-docs/
kuml-markdown ✅ Markdown kuml code block processor
kuml-asciidoc ✅ AsciiDoc [kuml] block macro (Antora-compatible)
kuml-profile/
kuml-profile-api ✅ KumlProfile SPI + KumlStereotypeApplication
kuml-profile-autosar ✅ AUTOSAR Classic R22-11 profile
kuml-profile-javaee ✅ JavaEE / Jakarta EE profile
kuml-profile-spring ✅ Spring Framework profile
kuml-profile-openapi ✅ OpenAPI 3.x profile
kuml-profile-soaml ✅ SoaML profile
kuml-packaging/ ✅ GraalVM Native Image + DEB/RPM/DMG/MSI + Docker + SDKMAN!
kuml-tests/
kuml-dsl-tests ✅ DSL unit tests
kuml-renderer-tests ✅ SVG snapshot tests
kuml-codegen-tests ✅ Codegen tests
kuml-cli-tests ✅ CLI end-to-end tests
kuml-vault-examples-tests ✅ 34 CI smoke tests: render all vault examples incl. 3 BPMN (V3.0.x+)
kuml-mcp-tests, kuml-ocl-tests, kuml-llm-tests ✅-
Handbook (online) — full DSL reference, diagram types, CLI, Gradle plugin, MDA, plugin API. Built with Antora from
docs/handbook/on every push tomaster. -
Getting Started — install kUML, your first class diagram, your first C4 diagram, watch mode, OCL, codegen, Markdown.
-
Diagram-Type Reference — every UML and C4 diagram type with a runnable snippet.
-
LLM Benchmark Guide — run the 10-task benchmark against the LLM of your choice.
-
Release & Distribution — Maven Central, Homebrew, release workflow.
-
Pandoc filter — generate HTML/PDF with kuml diagrams via Pandoc.
Apache 2.0 — see LICENSE
