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 Control Flows

In this section, you will learn how to add loops and if statements to your sequence diagrams. Messages and actors are the basis for a sequence diagram, but when you begin modeling real-world problems, it helps to have some more tools at your disposal to model the scenarios properly. This is where control flows help, as they add ways to show loops, alternative flows, and parallel executions in your diagrams. Let's start by looking at loops.

Showing loops

A loop in a sequence diagram is represented by a loop box that groups a number of messages. A loop box can have a title that can be used to indicate the nature of the loop or the condition for it. Grouped messages in a box are considered to be in a loop. The following diagram shows what a loop might look like:

Figure 7.14 – A sequence diagram demonstrating a loop statement

Figure 7.14 – A sequence diagram demonstrating a loop statement

This diagram has three actors that are processes: ProcessA, ProcessB, and ProcessC, which...