Structurizr DSL

The Structurizr DSL provides a way to define a software architecture model (based upon the C4 model) using a text-based domain specific language (DSL). The Structurizr DSL has appeared on the ThoughtWorks Tech Radar - Techniques - Diagrams as code and is text-based wrapper around the Structurizr for Java library.

Rendering tools

The Structurizr DSL itself does not create diagrams, and is rendering tool independent, there being a number of tools that can be used to render diagrams. Please note that the feature set and look/feel of the resulting diagrams will vary between tools.

  • Structurizr Lite/on-premises/cloud service: A browser-based diagram and documentation rendering tool with interactive diagrams, “double-click to zoom”, etc.
  • Structurizr Site Generatr: Generates a HTML microsite with diagrams, documentation, and a UI to explore the model.
  • Kroki: Kroki generates diagrams from a number of text-based formats, including the Structurizr DSL.
  • c4viz: A browser-based diagram renderer, with diagram navigation and “click to zoom”.
  • Git for Confluence - Markdown, PlantUML, Graphviz, Mermaid: A Confluence plugin that will render a specific diagram from a Structurizr DSL file stored in your git repo.
  • Structurizr Export: A collection of Java classes to generate diagrams as PlantUML, Mermaid, D2, DOT, and WebSequenceDiagrams. An export to Ilograph is also available.
  • Structurizr CLI: A command line tool that bundles the Structurizr Export utilities.

Other tools