Software architecture models as code
Structurizr builds upon "diagrams as code", allowing you to create multiple software architecture diagrams from a single model. There are a number of tools for creating Structurizr compatible workspaces, with the Structurizr DSL being the recommended option for most teams. This Structurizr DSL example creates two diagrams, based upon a single set of elements and relationships.
workspace {
model {
user = person "User"
softwareSystem = softwareSystem "Software System" {
webapp = container "Web Application" {
user -> this "Uses"
}
container "Database" {
webapp -> this "Reads from and writes to"
}
}
}
views {
systemContext softwareSystem {
include *
autolayout lr
}
container softwareSystem {
include *
autolayout lr
}
theme default
}
}


Designed for the C4 model
Structurizr is specifically designed to support the C4 model for visualising software architecture, by its creator Simon Brown. Diagrams are interactive (e.g. zoom in/out), animatable, embeddable, and include an automatically generated diagram key/legend.
Diagram your cloud architecture
Use themes to help document your cloud architecture; with prebuilt themes for Amazon Web Services, Microsoft Azure, Google Cloud Platform, Oracle Cloud Infrastructure, and Kubernetes.
Documentation
Publish supplementary documentation (e.g. a "software guidebook", arc42, etc) using Markdown or AsciiDoc.
Architecture decision records (ADRs)
Publish architecture decision records (ADRs) that capture your significant design decisions.
Alternative visualisations
Explore your software architecture with alternative visualisations, including tree views and interactive force-directed graphs.
In addition to the browser-based diagram renderer, the open source structurizr-export library (built-in to the Structurizr CLI) can export your views to a number of other formats, for visualising with other tools. Other rendering tools are available too; see structurizr.org - Rendering tools for more.