Funktionen¶
Der Diagramm-Generator deckt den vollständigen Arbeitsweg von der Eingabe einer Anforderung über die Generierung und Verfeinerung bis zum Export ab. Die Bedienung erfolgt über eine Chat-Schnittstelle, ein Daten-Panel und einen Code-Editor. Funktionen zur Qualitätssicherung — Pre-Validierung, LLM-gestützte Korrektur und Template-Fallback — laufen implizit ab und sind nicht Teil der manuellen Bedienung.
Anwendungsszenarien¶
- Dokumentation von Support-Prozessen — Aus einer Beschreibung wie „Support-Prozess mit 1st Level, 2nd Level und Fachabteilungen" erzeugt die Anwendung ein Swimlane-Diagramm mit den typischen Aktivitäten je Lane (Ticketannahme, Erstanalyse, technische Analyse, fachliche Bearbeitung) und den Übergängen zwischen den Lanes.
- Visualisierung von Bewerbungs- und Genehmigungsprozessen — Für Personalprozesse stehen Default-Lanes (Bewerber, HR-Team, Fachabteilung, Management) und passende Aktivitäten bereit. Das Ergebnis lässt sich anschließend per Chat anpassen.
- Projektplanung mit Gantt-Diagrammen — Aus tabellarischen Eingaben mit Aufgaben, Dauern und Abhängigkeiten entstehen Gantt-Diagramme einschließlich Phasen, Meilensteinen und Fortschrittsangaben.
- Erstellung von Organigrammen aus Hierarchien — Eingerückte Listen oder JSON-Bäume werden automatisch in hierarchische Diagramme überführt, geeignet für Team- oder Abteilungsstrukturen.
- Architektur- und Sequenzdiagramme für IT-Dokumentation — Beschreibungen von Systemkomponenten und Schnittstellen werden in Architektur- oder Sequenzdiagramme übersetzt, einschließlich typischer Aufruf-Antwort-Muster.
- Datenmodelle und ER-Diagramme — Tabellen- und Beziehungsbeschreibungen werden zu Entity-Relationship-Diagrammen verarbeitet, inklusive Kardinalitäten und Attributen.
Auf einen Blick¶
- Eingabe-Konnektoren für Datei-Upload (CSV, JSON, TXT) sowie freie Texteingabe.
- Sprachgesteuerte Erzeugung über Chat mit nachgelagerter Verfeinerung im Verlauf.
- Template-Bibliothek mit Vorlagen für Business-, Technik- und Projektszenarien.
- Mehrstufige Validierung mit automatischer Code-Korrektur und Template-Fallback.
- Export in SVG, PNG und Quellcode, zusätzlich Batch-Export als ZIP.
- Sitzungs-Persistenz mit Verlauf, Versionierung und Export/Import.
- Code-Editor mit Syntax-Hervorhebung, Render-Button und Undo-Stack.
Eingabe und Datenformate¶
Die Anwendung akzeptiert Eingaben sowohl als freien Text im Chat als auch als strukturierte Daten im Daten-Panel. Der Smart-Convert-Mechanismus erkennt das Format automatisch und überführt es in eine für die Diagrammgenerierung geeignete Form.
- CSV — Tabellarische Daten mit Spaltenüberschriften, geeignet für Beziehungs- und Aufgabenlisten. Die Verarbeitung erfolgt über pandas.
- JSON — Strukturierte und verschachtelte Daten, geeignet für hierarchische Diagramme und Konfigurationsdaten.
- Eingerückte Listen — Hierarchien in Klartext über Einrückung, geeignet für Organigramme und Mindmaps.
- Markdown-Listen — Aufzählungen mit Unterpunkten, geeignet für die schnelle Erfassung von Strukturen.
- Tabellen und Freitext — Tabellarische Strukturen werden erkannt und konvertiert; unstrukturierter Text wird vom Chat-Agenten interpretiert.
Hochgeladene Dateien können direkt aus einer CSV-, JSON- oder TXT-Datei eingelesen werden. Die maximale Eingabegröße ist konfigurierbar.
Diagrammtypen¶
Die Anwendung deckt die folgenden Diagrammtypen ab. Die Auswahl erfolgt entweder explizit über den Chat oder implizit aus der erkannten Absicht.
- Flowchart und Entscheidungsbäume
- Mindmap
- Organigramm
- Sequenzdiagramm
- Gantt-Diagramm und Roadmap
- Swimlane-Diagramm mit Lanes und Inter-Lane-Übergängen
- Kanban-Board mit Spalten
- State-Diagramm und User-Journey
- Entity-Relationship-Diagramm
- Netzwerk-Graph und Architekturdiagramm
Konnektoren und externe Komponenten¶
- Mermaid CLI (mmdc) — Externer Renderer für Mermaid-Diagramme. Die CLI wird per Subprozess aufgerufen und erzeugt SVG-Ausgaben über einen Headless-Chromium. Eine Konfigurationsdatei steuert Theme und Hintergrund.
- N2G (Need To Graph) — Externe Bibliothek zur Erzeugung von draw.io-XML aus Knoten-Kanten-Beschreibungen, eingebunden für Netzwerk- und Infrastrukturdiagramme.
- python-gantt — Externe Bibliothek zur Erzeugung von Gantt-Diagrammen mit Aufgaben, Ressourcen, Abhängigkeiten und Fortschrittsverfolgung.
- OpenAI-kompatible LLM-Schnittstelle — Externe Anbindung an einen Sprachmodell-Dienst über die OpenAI-API-Konvention. Die Anwendung ist gegenüber konkreten Modellen agnostisch und unterstützt sowohl externe Cloud-APIs als auch lokal betriebene Dienste.
- Interner LLM-Dienst — Standardmäßig wird ein intern bereitgestellter LLM-Endpunkt angesprochen. Die Anbindung erfolgt über die OpenAI-kompatible API; die Endpunkt-Details werden über die Konfiguration gesetzt.
- cairosvg und Pillow — Bibliotheken für die SVG-zu-PNG-Konvertierung im Export sowie für die Erzeugung von Vorschaubildern.
Qualitätssichernde Funktionen¶
Die Anwendung enthält mehrere Mechanismen, die die Korrektheit und Reproduzierbarkeit der Ergebnisse sichern.
- Pre-Validierung — Vor dem eigentlichen Rendering wird der Mermaid-Code auf bekannte Fehlermuster geprüft (eingebettete Schlüsselwörter, doppelte Diagrammdefinitionen, ungültige Knoten-IDs) und automatisch korrigiert.
- LLM-gestützte Code-Korrektur — Schlägt das Rendering fehl, korrigiert ein Validation-Agent den Code unter Bezugnahme auf eine vollständige Mermaid-Syntax-Referenz. Die Anzahl der Korrekturversuche ist konfigurierbar.
- Template-Fallback — Bleiben alle Korrekturversuche erfolglos, greift ein vorgefertigtes Template für den jeweiligen Diagrammtyp, sodass die Anwendung in jedem Fall ein renderbares Ergebnis liefert.
- JSON-Zwischenformat — Für strukturierte Diagrammtypen (Flowchart, Mindmap, Organigramm) erzeugt das LLM optional zunächst ein JSON-Zwischenformat, das anschließend regelbasiert in Mermaid-Code überführt wird. Das verringert Syntaxfehler.
- Deterministische Plan-zu-Code-Konvertierung — In der IPE-Architektur wird der Mermaid-Code aus dem strukturierten Plan ohne LLM-Aufruf erzeugt. Identische Pläne führen zu identischem Code.
- Konfidenz-basiertes Routing — Die Intent-Erkennung kombiniert regelbasierte und LLM-basierte Analyse. Bei hoher Konfidenz aus der Schnellanalyse wird die LLM-Stufe übersprungen; bei niedriger Konfidenz wird das LLM hinzugezogen.
- Diagramm-Versionierung und Nachvollziehbarkeit — Erzeugte Diagramme werden mit eindeutigen IDs, Versionsständen und Eltern-Beziehungen versehen, sodass Modifikationen nachvollziehbar bleiben.
Bedienung und weitere Funktionen¶
- Chat-gesteuerte Erzeugung und Modifikation — Eine Chat-Schnittstelle nimmt natürliche Beschreibungen entgegen, berücksichtigt den Verlauf und unterscheidet zwischen Neu-Erstellung, Modifikation, Erweiterung und Analyse bestehender Diagramme.
- Code-Editor mit Direkt-Render — Erzeugter Code lässt sich manuell anpassen und neu rendern. Eine Undo-Historie und Syntax-Hervorhebung sind enthalten.
- Galerie und Historie — Mehrere generierte Vorschläge werden parallel in einer Galerie angezeigt; eine Historie mit Vorschaubildern erlaubt den Rücksprung auf frühere Versionen.
- Export — Einzel- und Batch-Export in SVG, PNG und Quellcode. Batch-Exporte werden als ZIP-Archiv ausgeliefert.
- Sitzungs-Persistenz — Sitzungsdaten lassen sich exportieren und an anderer Stelle wieder importieren.