PlantUML Rendering Backend¶
The PlantUML rendering backend maps diagrams to C4-PlantUML output. It is the richest rendering backend in this project and owns PlantUML-only DSL helpers, extension data, render options, local/remote image backends, and C4-PlantUML include behavior.
For portable model code, start with Portable core and backend extensions. For PlantUML-specific behavior, use the pages in this section.
Capability table¶
| Capability | Status | Where to configure |
|---|---|---|
| C4-PlantUML element mapping | Supported for core C4 elements, boundaries, and deployment nodes | Core diagram classes plus plantuml={...} |
| C4-PlantUML relationship mapping | Portable Rel plus PlantUML directional and bidirectional helpers |
c4.contrib.plantuml |
| Layout direction | Supported as render options | Styles and options |
| Relative positioning | Supported with Lay* helpers |
Layout helpers |
| Dynamic indexes | Supported for dynamic diagrams | Dynamic indexes |
| Properties | Supported on most elements and relationships | Properties |
| Tags, styles, and legend | Supported through extension data and render options | Extensions, styles and options |
| Local backend | Supported with plantuml binary or plantuml.jar |
Renderers |
| Remote backend | Supported with PlantUML-compatible HTTP servers | Renderers |
| Bundled C4-PlantUML includes | Uses remote C4-PlantUML includes by default, with local include override | Limitations |
| Sequence diagrams | Not exposed by the Python DSL | Limitations |
Pages¶
- Renderers:
PlantUMLRenderer, local backend, and remote backend. - Extensions: preferred
plantuml={...}authoring syntax. - Layout helpers: directional relationships, bidirectional relationships, and relative layouts.
- Dynamic indexes:
Index,LastIndex,SetIndex,increment, andset_index. - Styles and options: diagram layout direction, legend, sketch style, and C4 visual style.
- Properties: PlantUML property tables.
- Limitations: unsupported C4-PlantUML features and include behavior.