Quickly learn how to create various diagrams using Mermaid syntax
graph TD A[Start] --> B{Logged in?} B -->|Yes| C[Show Homepage] B -->|No| D[Show Login Page] C --> E[End] D --> E
Basic Syntax:
graph TD
defines a top-down flowchart A[Text]
creates a rectangle node B{Text}
creates a diamond node (typically for conditions) -->
creates a connection between nodes -->|Text|
creates a labeled arrowsequenceDiagram participant User participant System participant Database User->>System: Login Request System->>Database: Verify Credentials Database-->>System: Verification Result System-->>User: Login Response
Basic Syntax:
sequenceDiagram
defines a sequence diagram participant Name
defines a participant A->>B: Text
creates a solid arrow (synchronous message) A-->>B: Text
creates a dashed arrow (asynchronous message)classDiagram class Animal { +String name +makeSound() } class Dog { +fetch() } class Cat { +scratch() } Animal <|-- Dog Animal <|-- Cat
Basic Syntax:
classDiagram
defines a class diagram class ClassName {}
defines a class with properties/methods +
indicates public properties/methods -
indicates private properties/methods A <|-- B
indicates B inherits from A (B is a subclass of A)stateDiagram-v2 [*] --> Pending Pending --> Processing: Start Processing Processing --> Completed: Complete Processing Processing --> Cancelled: Cancel Completed --> [*] Cancelled --> [*]
Basic Syntax:
stateDiagram-v2
defines a state diagram [*]
represents start or end state A --> B
represents a transition from state A to B A --> B: Text
adds transition description texterDiagram CUSTOMER ||--o{ ORDER : places ORDER ||--|{ LINE-ITEM : contains CUSTOMER }|..|{ DELIVERY-ADDRESS : uses
Basic Syntax:
erDiagram
defines an entity relationship diagram ||--o{
represents a one-to-many relationship ||--|{
represents a one-to-many (mandatory) relationship }|..|{
represents a many-to-many relationship (dashed line) : Text
adds relationship labelgantt title Project Development Plan dateFormat YYYY-MM-DD section Design Phase Requirements Analysis :done, des1, 2023-01-01, 2023-01-05 Prototype Design :active, des2, 2023-01-06, 3d section Development Phase Coding :dev1, after des2, 20d Testing :dev2, after dev1, 10d
Basic Syntax:
gantt
defines a Gantt chart title Title
sets the chart title dateFormat Format
sets the date format section Name
creates a task section Task Name: ID, Start Date, Duration/End Date
defines a task with its timespan done/active
marks task status (completed/in progress) after ID
defines task dependencypie title Traffic Sources "Search Engines" : 42.7 "Direct Access" : 25.5 "Social Media" : 18.3 "Other Channels" : 13.5
Basic Syntax:
pie
defines a pie chart title Title
sets the chart title "Label" : Value
defines a slice in the pie chartThis page provides basic Mermaid syntax guidelines. For more advanced features and detailed syntax, please refer to: