Full de trucs de sintaxi mermaid

Mermaid té una referència extensa i un subconjunt petit que cobreix gairebé tot el que la gent dibuixa. Aquesta pàgina és aquest subconjunt: formes, fletxes, agrupació, colors, i un exemple de còpia i enganxa per cada tipus de diagrama. Cada fragment de sota es renderitza tal qual — enganxa'l a l'editor per veure'l.

El diagrama més curt que funciona

Un flowchart necessita una línia de declaració i una fletxa. TD vol dir de dalt a baix; fes servir LR per a d'esquerra a dreta, que va millor per a processos amples.

flowchart TD
  A[Start] --> B{Ready?}
  B -->|Yes| C[Ship it]
  B -->|No| A
Un flowchart de tres nodes, de dalt a baix.

A, B i C són identificadors de node — noms interns, mai dibuixats. El text entre claudàtors és l'etiqueta, i l'estil dels claudàtors és el que tria la forma.

Formes de node

La forma es tria pel parell de delimitadors al voltant de l'etiqueta. Aquestes són les que val la pena recordar:

SintaxiFormaSignificat habitual
A[Text]RectangleUn pas o acció
A(Text)ArrodonitUn punt d'inici o final
A([Text])PíndolaUn terminador
A[[Text]]SubrutinaUna crida a un altre procés
A[(Text)]CilindreUna base de dades o magatzem
A((Text))CercleUna unió
A{Text}RombeUna decisió
A{{Text}}HexàgonUn pas de preparació
A[/Text/]Paral·lelogramEntrada o sortida
A[/Text\]TrapeziUna operació manual

Posa l'etiqueta entre cometes quan contingui claudàtors, dos punts o cometes: A["Load (raw) data"]. Sense cometes, l'analitzador interpreta la teva puntuació com a sintaxi.

Fletxes

SintaxiResultat
A --> BFletxa
A --- BLínia, sense punta de fletxa
A -.-> BFletxa de punts
A ==> BFletxa gruixuda
A -->|label| BFletxa amb una etiqueta
A --> B --> CCadena, escrita en una sola línia
A --> B & CUn origen, dues destinacions

La longitud de la fletxa també és significativa: --> és un rang, ---> empeny la destinació un rang més avall. És el control de disposició més senzill que mermaid ofereix.

Agrupar amb subgrafs

Un subgraph dibuixa una capsa amb etiqueta al voltant de nodes. Els subgrafs es poden imbricar, i les fletxes poden travessar les seves vores lliurement.

flowchart LR
  subgraph api["API"]
    H[Handler] --> S[(Postgres)]
  end
  subgraph worker["Worker"]
    Q[Queue] --> W[Job]
  end
  H --> Q
Dos serveis, cadascun amb el seu propi magatzem.

Color i estils

style pinta un node. classDef més class pinta un conjunt d'ells, que és el que vols passats tres o quatre nodes.

flowchart TD
  A[OK] --> B[Failed]
  style A fill:#16a34a,stroke:#333,color:#fff
  classDef bad fill:#dc2626,stroke:#333,color:#fff
  class B bad

Els colors formen part del codi font del diagrama, així que sobreviuen l'exportació i viatgen amb el fitxer. Res aquí depèn d'una configuració de tema de l'eina que el renderitza.

Un exemple per cada tipus de diagrama

Diagrama de seqüència

sequenceDiagram
  participant User
  participant API
  participant DB
  User->>API: request
  API->>DB: query
  DB-->>API: rows
  API-->>User: response

Diagrama de classes

classDiagram
  class Animal {
    +String name
    +move()
  }
  class Dog {
    +bark()
  }
  Animal <|-- Dog

Diagrama d'estats

stateDiagram-v2
  [*] --> Idle
  Idle --> Running: start
  Running --> Idle: stop
  Running --> [*]: finish

Diagrama de relació d'entitats

erDiagram
  CUSTOMER ||--o{ ORDER : places
  ORDER ||--|{ LINE_ITEM : contains
  CUSTOMER {
    string name
    string email
  }

Diagrama de Gantt

gantt
  title Project
  dateFormat YYYY-MM-DD
  section Phase 1
  Task 1 :a1, 2026-01-01, 5d
  Task 2 :after a1, 5d

On mermaid es renderitza tot sol

  • GitHub — un bloc ```mermaid amb tanca es renderitza en issues, pull requests, comentaris i fitxers README.
  • GitLab — el mateix bloc amb tanca, en issues, merge requests i la wiki.
  • Notion — un bloc de codi amb el llenguatge configurat a Mermaid es renderitza al costat del codi font.
  • Obsidian — un bloc mermaid amb tanca es renderitza en mode de previsualització.
  • Llocs de documentació — Docusaurus, MkDocs Material i VitePress admeten tots blocs mermaid.

Aquesta és la raó real per mantenir els diagrames com a mermaid en lloc d'imatges: el diagrama viu al mateix fitxer de text que allò que descriu, i una revisió de codi pot veure què hi ha canviat.

Prova qualsevol fragment d'aquesta pàgina

Enganxa'l a la pestanya de codi i es renderitza a l'instant — o construeix el mateix diagrama al llenç i llegeix la sintaxi de tornada.

Preguntes freqüents

Com afegeixo un salt de línia dins d'una etiqueta de node?

Fes servir <br> dins d'una etiqueta entre cometes: A["First line<br>Second line"]. Mermaid renderitza l'etiqueta com a HTML, així que l'etiqueta funciona encara que la resta de la sintaxi no sigui HTML.

Per què la meva etiqueta trenca el diagrama?

Gairebé sempre és un claudàtor, parèntesi, dos punts o cometa sense cometes dins de l'etiqueta. Envolta tota l'etiqueta amb cometes dobles i l'analitzador deixa de tractar la teva puntuació com a sintaxi.

Puc controlar la disposició?

Només indirectament. Tria la direcció (TD, LR, BT, RL), fes servir fletxes més llargues (--->) per separar més els nodes, i agrupa els nodes relacionats en subgrafs. Mermaid calcula la resta — no hi ha coordenades.

Quina versió de mermaid fa servir aquest editor?

Mermaid 11, la versió principal actual, així que tot el que està documentat per a la sintaxi de v10 i v11 es renderitza aquí.

Més guies

  1. Exporta mermaid a PNG o SVG

    Quatre maneres de treure un diagrama mermaid — PNG, SVG, codi font .mmd i un bloc Markdown — i quan cadascuna és la resposta correcta.

  2. Diagrames de seqüència mermaid

    Participants, tipus de fletxa, barres d'activació, bucles i blocs alt — tota la sintaxi del diagrama de seqüència amb exemples que funcionen.

Obre l'editor. Gratuït — sense registre.

Un llenç en blanc, una pestanya de codi i totes les opcions d'exportació — gratuïtes, al teu navegador, ara mateix.