Book Image

The Official Guide to Mermaid.js

By : Knut Sveidqvist, Ashish Jain
Book Image

The Official Guide to Mermaid.js

By: Knut Sveidqvist, Ashish Jain

Overview of this book

Mermaid is a JavaScript-based charting and diagramming tool that lets you represent diagrams using text and code, which simplifies the maintenance of complex diagrams. This is a great option for developers as they’re more familiar with code, rather than using special tools for generating diagrams. Besides, diagrams in code simplify maintenance and ensure that the code is supported by version control systems. In some cases, Mermaid makes refactoring support for name changes possible while also enabling team collaboration for review distribution and updates. Developers working with any system will be able to put their knowledge to work with this practical guide to using Mermaid for documentation. The book is also a great reference for looking up the syntax for specific diagrams when authoring diagrams. You’ll start by learning the importance of accurate and visual documentation. Next, the book introduces Mermaid and establishes how to use it to create effective documentation. By using different tools, editors, or a custom documentation platform, you’ll also understand how to use Mermaid syntax for various diagrams. Later chapters cover advanced configuration settings and theme options to manipulate your diagram as per your needs. By the end of this book, you’ll be well-versed with Mermaid diagrams and how they can be used in your workflows.
Table of Contents (19 chapters)
1
Section 1: Getting Started with Mermaid
7
Section 2: The Most Popular Diagrams
12
Section 3: Powerful Diagrams for the Advanced User

Understanding states and transitions

State diagrams are used to describe the states in a system and the transitions between the states. In this section, you will learn how to define states and transitions when using Mermaid. You will also learn about the different types of states you can define.

In a state diagram, there are two special states, called the Start state and the Stop state, indicating the beginning and the end of the execution of the state machine. They both share the same token in the code, [*]. If a transition starts from the token, it is interpreted as a start state and if a transition ends at the token it is interpreted as an end state. The following example shows a small state machine only consisting of a start state and an end state:

stateDiagram
    [*] --> [*]

In the preceding code snippet, you can see that the diagram starts with the keyword stateDiagram. This makes Mermaid understand that the diagram type for this diagram is a...