Skip to content

Architecture-as-a-Code

Design, visualize, and maintain your software architecture with a modern DSL. Version controlled with your code.

DSL

Simple language to describe your model, LLM-friendly

API

Access your model from the code and extend capabilities

MCP

Provide architectural context for your developers and agents

IDE

Immediate feedback, preview and validation in your editor

Everything you need

Built for modern development teams who value clarity, collaboration, and code-first workflows.

Your Language

Define your system using a clean, readable DSL designed for clarity and control.

Instant Visual Feedback

See diagrams update as you type — real-time visualization, no manual sync needed.

Versioned

Store diagrams in Git, track diffs, and collaborate with familiar developer workflows.

AI-Friendly

Expose your architecture to AI agents via MCP or API — no extra effort.

C4 — Evolved

Built on the proven C4 model, extended with flexibility and modern customization options.

Integrate Anywhere

Embed interactive diagrams into docs, websites or apps - React or Webcomponents.

See it in action

Write architecture like code. See diagrams appear instantly.

// You start with defining your terms and ...
specification {
// ... "types" of your elements
element actor {
style {
shape person // how to render
}
}
element system
element component
// and "typed" relationships (if you need)
relationship async
}
// Here goes your model, the single source of truth
model {
customer = actor 'Customer' {
description 'A user of our product with active subscription'
-> ui 'opens in browser'
}
cloud = system 'Our SaaS' {
backend = component 'Backend' {
icon tech:graphql
description 'Implements business logic and provides GraphQL API'
}
ui = component 'Frontend' {
description 'NextJS application'
style {
icon tech:nextjs
shape browser
}
}
ui -[async]-> backend 'requests via HTTPS'
}
}
// And finally, you define what to render
views {
view index {
title 'Landscape view'
include *, cloud.*
style cloud.* {
color green
}
}
}

Try it yourself with our interactive playground

Launch Playground