Dieser Post setzt den vierzehnten Teil fort.
Jedes Team hat eigene visuelle Konventionen — Farben, Formen, Notationen.
bausteinsicht generate-template generiert eine draw.io-Template-Datei die alle Element-Typen aus der Spezifikation mit konsistenten Stilen enthält.
Was ist ein draw.io-Template?
Eine Template-Datei ist eine draw.io-Datei mit vordefinierten Shapes für jeden Element-Typ. Statt im Diagramm Elemente manuell zu stylen, zieht man einfach den passenden Shape aus dem Template-Panel.
generate-template leitet die Shapes automatisch aus specification.elements in architecture.jsonc ab — für jeden kind wird ein gestylter Shape generiert.
bausteinsicht generate-template
bausteinsicht generate-templateErstellt architecture-template.drawio mit Shapes für jeden Element-Typ.
Style-Presets
# Standard-Preset (blaue Shapes, weiße Beschriftung)
bausteinsicht generate-template --style default
# C4-Notation (farblich nach C4-Standard: blau/grau/grün)
bausteinsicht generate-template --style c4
# Minimalist (nur Umrisse, keine Füllfarbe)
bausteinsicht generate-template --style minimal
# Dark Mode (dunkle Hintergründe, helle Schrift)
bausteinsicht generate-template --style darkAusgabedatei wählen
bausteinsicht generate-template --output docs/diagrams/team-template.drawioTemplate in draw.io verwenden
generate-templateausführen →architecture-template.drawioentstehtIn draw.io: Extras → Vorlagen bearbeiten → Template-Datei importieren
Im linken Panel erscheinen die eigenen Element-Shapes
Jeder Shape hat bereits den korrekten Namen und Style — beim Ziehen ins Diagramm wird das Element direkt mit dem richtigen kind-Wert annotiert, den bausteinsicht sync erkennt.
Template aus eigener Spezifikation
Das Template spiegelt immer die aktuelle specification.elements:
{
"specification": {
"elements": {
"frontend": { "notation": "Browser", "description": "Web-Frontend" },
"service": { "notation": "Hexagon", "description": "Backend-Service", "container": true },
"database": { "notation": "Cylinder", "description": "Persistenz" },
"queue": { "notation": "Parallelogram","description": "Message Queue" },
"external": { "notation": "Cloud", "description": "Externes System" }
}
}
}generate-template erstellt für jeden dieser Typen einen Shape im gewählten Style.
Neue Element-Typen → Template neu generieren → sofort im Panel verfügbar.
Template ins Repository committen
git add architecture-template.drawio
git commit -m "update draw.io template for current element types"So hat das gesamte Team immer das aktuelle Template — kein manuelles Verteilen von Stildateien.
Das Template neu generieren wenn neue kind-Werte zur Spezifikation hinzukommen. Ein kurzer generate-template && git add && git commit reicht. |
Beispiel-Modell
Das Beispiel für diesen Teil (benutzerdefinierte Elementtypen: Browser, Hexagon, Cylinder, Parallelogram, Cloud) liegt unter teil_15.jsonc.
So sieht das Ergebnis in draw.io aus (bausteinsicht sync):
Das draw.io-File dafür findest du hier: teil_15.drawio
Generierte PNG-Dateien via bausteinsicht export --image-format png:


Generierte PlantUML-Diagramme via bausteinsicht export-diagram:
Was als nächstes kommt
Teil 16: Workspace — Mehrere Architekturmodelle in einem Workspace kombinieren
Teil 17: Sequenzdiagramme — Dynamische Views als PlantUML und Mermaid exportieren
Offizielle Dokumentation: User Manual · Tutorial auf doctoolchain.org