Diagramme erklären Abläufe, Architekturen und Zeitpläne besser als seitenlanger Text. Wer sie aber in einem Grafikprogramm zeichnet, muss Bilder exportieren, neben der Dokumentation ablegen und bei jeder Änderung alles neu zeichnen.
Mermaid löst dieses Problem: Sie beschreiben das Diagramm in ein paar Zeilen Text in Ihrer Markdown-Datei, und die Vorschau zeichnet es. Das Diagramm steckt in derselben Datei, erscheint in Diffs und lässt sich so leicht ändern wie ein Satz. GitHub, GitLab, Obsidian, viele Dokumentationsgeneratoren und der Markdown Preview Editor stellen Mermaid ohne weitere Einrichtung dar.
So fügen Sie ein Mermaid-Diagramm ein
Legen Sie einen Codeblock an und setzen Sie seine Sprache auf mermaid:
markdown```mermaid
flowchart LR
A[Schreiben] --> B[Vorschau]
B --> C{Fertig?}
C -- ja --> D[Export]
C -- nein --> A
```
Die Vorschau macht daraus:
Die erste Zeile nennt den Diagrammtyp. Alles danach beschreibt Knoten und Verbindungen.
Flussdiagramme
Flussdiagramme sind der meistgenutzte Diagrammtyp. Die Richtung folgt auf das Schlüsselwort: TD oder TB (von oben nach unten), BT, LR (von links nach rechts) oder RL.
mermaidflowchart TD
start([Start]) --> input[/Datei lesen/]
input --> valid{Gültig?}
valid -- Ja --> save[(In Datenbank speichern)]
valid -- Nein --> error[Fehler anzeigen]
error --> input
Die Klammern um eine Beschriftung legen die Form des Knotens fest:
| Syntax | Form |
|---|---|
A[Text] |
Rechteck |
A(Text) |
Abgerundetes Rechteck |
A([Text]) |
Stadion (Pille) |
A{Text} |
Raute, für Entscheidungen |
A[(Text)] |
Datenbank-Zylinder |
A((Text)) |
Kreis |
A[/Text/] |
Parallelogramm, für Ein-/Ausgabe |
A{{Text}} |
Sechseck |
Verbindungen: --> ist ein Pfeil, --- eine Linie ohne Pfeil, -.-> ein gepunkteter Pfeil und ==> ein dicker Pfeil. Eine Beschriftung fügen Sie mit -- text --> oder -->|text| hinzu.
Zusammengehörige Knoten gruppieren Sie mit subgraph:
mermaidflowchart LR
subgraph Browser
editor[Editor] --> preview[Vorschau]
end
preview --> export[HTML / PDF]
Sequenzdiagramme
Sequenzdiagramme zeigen, wie Beteiligte im Zeitverlauf Nachrichten austauschen – ideal für APIs, Anmeldeabläufe und User Journeys.
mermaidsequenceDiagram
participant U as Nutzer
participant A as App
participant S as Server
U->>A: Klick auf „Anmelden“
A->>S: POST /login
S-->>A: 200 OK + Token
A-->>U: Dashboard anzeigen
Note over A,S: Das Token läuft nach 1 Stunde ab
->> ist ein durchgezogener Pfeil (eine Anfrage), -->> ein gestrichelter Pfeil (eine Antwort). Note over, Note left of und Note right of fügen Kommentare hinzu. Mit den Blöcken loop, alt/else und opt stellen Sie Wiederholungen und Verzweigungen dar.
Gantt-Diagramme
Ein Gantt-Diagramm macht aus einer Aufgabenliste einen Zeitplan. Aufgaben können an einem Datum oder after (nach) einer anderen Aufgabe beginnen.
mermaidgantt
title Dokumentations-Sprint
dateFormat YYYY-MM-DD
section Schreiben
Gliederung :done, a1, 2026-10-01, 2d
Erster Entwurf :active, a2, after a1, 4d
section Review
Peer-Review : a3, after a2, 3d
Veröffentlichen :milestone, after a3, 0d
Zustandsdiagramme
Zustandsdiagramme beschreiben, wie etwas zwischen Zuständen wechselt – eine Bestellung, ein Dokument, eine UI-Komponente.
mermaidstateDiagram-v2
[*] --> Entwurf
Entwurf --> Review : einreichen
Review --> Entwurf : Änderungen angefordert
Review --> Veröffentlicht : freigeben
Veröffentlicht --> [*]
Kreisdiagramme
Für einen schnellen Überblick über Anteile braucht ein Kreisdiagramm eine Zeile pro Segment:
mermaidpie title Wofür Dokumentationszeit draufgeht
"Schreiben" : 45
"Formatieren" : 15
"Diagramme aktuell halten" : 40
Mermaid unterstützt außerdem Klassendiagramme, Entity-Relationship-Diagramme, Mindmaps, Zeitleisten, Git-Graphen, Quadrantendiagramme und mehr. Die Syntax für jeden Typ ist auf der offiziellen Mermaid-Website dokumentiert.
Tipps für lesbare Diagramme
- Halten Sie es klein. Ein Diagramm mit mehr als 15–20 Knoten wird schwer lesbar. Teilen Sie es in mehrere Diagramme auf, eines pro Idee.
- Wählen Sie die Richtung bewusst.
LRpasst zu Abläufen mit wenigen Schritten;TDpasst zu Hierarchien und langen Abläufen, besonders auf schmalen Bildschirmen. - Verwenden Sie kurze IDs und lesbare Beschriftungen. Schreiben Sie
auth[Sitzung prüfen], statt die Beschriftung als ID zu verwenden – so bleiben die Verbindungen kurz. - Setzen Sie Beschriftungen mit Sonderzeichen in Anführungszeichen:
A["Preis: $5 (inkl. MwSt.)"]. - Fügen Sie Kommentare mit
%%am Zeilenanfang hinzu. Sie werden beim Zeichnen ignoriert. - Sehen Sie sich die Vorschau beim Tippen an. Ein fehlender Pfeil oder eine fehlende Klammer macht das ganze Diagramm kaputt – eine Live-Vorschau erspart viel Rätselraten. Im Markdown Preview Editor wird das Diagramm beim Bearbeiten neu gezeichnet, und die Schaltfläche Mermaid-Diagramm im Erweiterten Editor fügt eine Startvorlage ein.
Dokumente mit Diagrammen teilen
Wenn Sie ein Dokument als HTML oder PDF exportieren, werden die Diagramme als Bilder übernommen – Ihre Leser brauchen also kein Mermaid. Für Formeln neben Ihren Diagrammen lesen Sie, wie Sie mathematische Formeln in Markdown schreiben, und für alles andere – Tabellen, Aufgabenlisten, Hinweisblöcke – halten Sie den Markdown-Spickzettel griffbereit.
Häufig gestellte Fragen
Unterstützt GitHub Mermaid-Diagramme?
Ja. GitHub stellt Mermaid-Codeblöcke in Markdown-Dateien, Issues, Pull Requests und Wikis dar. Auch GitLab, Azure DevOps, Obsidian und viele Dokumentationsgeneratoren unterstützen Mermaid.
Warum wird mein Mermaid-Diagramm nicht dargestellt?
Meist wegen eines Syntaxfehlers: ein fehlender Pfeil, eine nicht geschlossene Klammer oder ein Sonderzeichen in einer Beschriftung, die nicht in Anführungszeichen steht. Prüfen Sie auch die erste Zeile – sie muss einen gültigen Diagrammtyp nennen, etwa flowchart TD oder sequenceDiagram.
Kann ich die Farben eines Mermaid-Diagramms ändern?
Mermaid unterstützt Themes sowie classDef- und style-Anweisungen für einzelne Knoten. Ob eigene Styles funktionieren, hängt von der Plattform ab, und manche Vorschau-Tools schränken sie aus Gründen der Einheitlichkeit oder Sicherheit ein. Gestalten Sie Diagramme daher so, dass sie mit dem Standard-Theme gut lesbar sind.
Kann ich ein Mermaid-Diagramm als Bild exportieren?
Der Markdown Preview Editor bettet Diagramme als Bilder ein, wenn Sie das Dokument als HTML exportieren, und sie sind enthalten, wenn Sie als PDF drucken. Für ein einzelnes PNG oder SVG können der offizielle Mermaid Live Editor und die Mermaid CLI einzelne Diagramme exportieren.