Comparison
As far as practical, the exporters try to replicate the way that the Structurizr cloud service, on-premises installation, and Lite renders diagrams. See Notation for more details but, in summary, every element/relationship in the model can have one or more text-based tags associated with it, and you can create element/relationship styles associated with those tags to customise how the items are rendered. This concept is similar to how to might add one or more CSS classes to a HTML element, to customise how it’s rendered in the browser. The DSL cookbook - Element styles and DSL cookbook - Relationship styles show some examples of how this works if you’re using the Structurizr DSL.
It’s important to note that some features provided by the Structurizr cloud service, on-premises installation, and Lite are not supported by these exporters. For example, the PlantUML exporter doesn’t support the same set of element shapes, because PlantUML itself doesn’t support many of them. In general, the Structurizr cloud service, on-premises installation, and Lite will provide the most feature complete and richest set of diagrams.
The following table summarises the features that are available via the exporters implemented in this library.
Feature | Structurizr Lite/cloud/on-premises | StructurizrPlantUMLExporter | C4PlantUMLExporter | MermaidExporter | DOTExporter |
---|---|---|---|---|---|
Element styles | All | Limited | Limited (with c4plantuml.tags true ) | Limited | Limited |
Relationship styles | All | Limited | Limited (with c4plantuml.tags true ) | Limited | Limited |
Shapes | All | Limited | Limited | Limited | Limited |
Icons | Yes | Limited | Limited (with c4plantuml.tags true ) | No | No |
Automatic diagram key/legend | Yes | Yes | Yes | No | No |
Click to zoom | Yes | No | No | No | No |
Interactive features (tooltips, perspectives, etc) | Yes | No | No | No | No |
Animation | Yes | Yes (with plantuml.animation true ) | Yes (with plantuml.animation true ) | No | No |
Automatic layout | Yes | Yes | Yes | Yes | Yes |
Manual layout | Yes | No | No | No | No |
Filtered views | Yes | No | No | No | No |