Mermaid ZenUML Diagrams
ZenUML provides an alternative syntax for sequence diagrams, offering more concise notation. Perfect for complex sequence diagrams with less verbosity.
Use Case
Use ZenUML when you need to:
- Create concise sequence diagrams
- Show complex interactions
- Document API flows
- Visualize method calls
- Use alternative sequence syntax
Code
1```mermaid
2zenuml
3 Client -> API: Request
4 API -> Database: Query
5 Database --> API: Result
6 API --> Client: Response
7```
Result:
Examples
Example 1: API Flow
1```mermaid
2zenuml
3 User -> Frontend: Click Button
4 Frontend -> API: POST /data
5 API -> Auth: Validate Token
6 Auth --> API: Valid
7 API -> Database: Save Data
8 Database --> API: Success
9 API --> Frontend: 201 Created
10 Frontend --> User: Show Success
11```
Result:
Example 2: Decorators, Groups, and Blocks
1```mermaid
2zenuml
3 title Order Service
4
5 @Actor Client #FFEBE6
6 @Boundary OrderController #0747A6
7 @EC2 <<BFF>> OrderService #E3FCEF
8
9 group BusinessService {
10 @Lambda PurchaseService
11 @AzureFunction InvoiceService
12 }
13
14 @Starter(Client)
15 // POST /orders
16 OrderController.post(payload) {
17 OrderService.create(payload) {
18 order = new Order(payload)
19 if (order != null) {
20 par {
21 PurchaseService.createPO(order)
22 InvoiceService.createInvoice(order)
23 }
24 }
25 }
26 }
27```
Result:
Notes
zenuml- Start ZenUML diagram->- Synchronous call,-->- Return/responsetitle- Diagram title- Decorators like
@Actor,@Boundary,@EC2,@Lambda,@AzureFunctiondeclare participants with types and optional colors group Name { ... }- Logical group of related participants@Starter(Participant)- Entry point- Blocks (
{ ... }),if (...) { ... }, andpar { ... }describe control flow, conditions, and parallel execution
Gotchas/Warnings
- ⚠️ Syntax: ZenUML syntax differs significantly from standard Mermaid
sequenceDiagram - ⚠️ Support: ZenUML support in Mermaid may be limited or behind a feature flag in some versions
- ⚠️ Fallback: Use standard
sequenceDiagramifzenumldoes not render in your environment - ⚠️ Versioning: Check current Mermaid / ZenUML docs for any syntax changes
Related Snippets
- Architecture Diagrams (C4 Model)
Create system architecture diagrams using C4 model with Mermaid - Chart.js Bar Chart
Create bar charts for data visualization - Graphviz DOT Diagrams
Create complex graph layouts with Graphviz DOT language - KaTeX Math Examples and Tips
Comprehensive guide to KaTeX math notation with examples and tips - Mermaid Arbitrary Graphs
Create arbitrary graphs and networks with Mermaid - Mermaid Block Diagrams
Create block diagrams for system architecture with Mermaid - Mermaid Charts (Pie, Bar, Line)
Create pie charts, bar charts, and line charts with Mermaid - Mermaid Class Diagrams (UML)
Create UML class diagrams with Mermaid - Mermaid Entity Relationship Diagrams
Create Entity Relationship Diagrams (ERD) with Mermaid - Mermaid Flowchart
Create flowcharts and decision trees with Mermaid - Mermaid Gantt Chart
Create Gantt charts for project timelines and scheduling - Mermaid Git Diagrams
Create Git branch and commit diagrams with Mermaid - Mermaid Kanban Boards
Create Kanban boards for project management with Mermaid - Mermaid Mindmaps
Create mindmaps for brainstorming and organizing ideas with Mermaid - Mermaid Packet Diagrams
Create packet diagrams for network protocols with Mermaid - Mermaid Quadrant Charts
Create quadrant charts for prioritization with Mermaid - Mermaid Radar Charts
Create radar charts for multi-dimensional comparisons with Mermaid - Mermaid Requirement Diagrams
Create requirement diagrams for system requirements with Mermaid - Mermaid Sankey Diagrams
Create Sankey diagrams for flow visualization with Mermaid - Mermaid Sequence Diagram
Create sequence diagrams for interactions and API flows - Mermaid State Diagrams
Create state diagrams and state machines with Mermaid - Mermaid Timeline Diagrams
Create timeline diagrams for chronological events with Mermaid - Mermaid Treemap Diagrams
Create treemap diagrams for hierarchical data visualization with Mermaid - Mermaid User Journey Diagrams
Create user journey maps with Mermaid - P5.js Interactive Visualizations
Create interactive visualizations and animations with P5.js