Diagram & Flowchart Maker
Write flowcharts, sequence diagrams and mind maps as text and get a laid-out SVG/PNG diagram.
Try an example: Order flowchart (top-down, shapes, labelled edges, a loop) · Login sequence diagram · Trip mind map · Left-to-right pipeline
How it works
Type a diagram in a Mermaid-like text syntax – flowcharts (top-down or left-right, node shapes, labelled arrows), sequence diagrams (participants, messages, notes, loop/alt blocks) or indented mind maps – and get an automatically laid-out, accessible SVG with SVG/PNG downloads. Syntax errors are reported with line numbers.
- The text is parsed line by line; every error is reported with its line (and column for flowcharts). Supported: flowchart/graph TD|TB|BT|LR|RL with shapes [rect] (round) ([stadium]) [[subroutine]] [(database)] ((circle)) {diamond} {{hexagon}} [/parallelogram/] [/trapezoid\] >flag], arrows --> --- -.-> ==> <-->, labels -->|text| or -- text -->, chains A --> B --> C and groups A & B --> C; sequenceDiagram with participant/actor (… as Alias), ->> -->> -> --> -x --x -) --), Note left of/right of/over, loop/alt/else/opt/par/critical/break … end, autonumber; mindmap with indentation and the usual node shapes.
- Flowcharts are laid out with a layered (Sugiyama-style) algorithm: cycles are broken by reversing DFS back edges; nodes get the longest-path layer (edges with labels span two layers so the label gets its own slot); long edges get dummy nodes; crossings are reduced with 24 alternating barycentre sweeps plus adjacent swaps, keeping the best ordering; positions are assigned by order-preserving least squares (isotonic regression) toward the neighbours, which keeps long edges straight.
- Sequence diagrams place participants in order of appearance, widen gaps to fit message texts and stack messages, notes and blocks top-down. Mind maps are drawn as a two-sided tree, balancing first-level branches by their number of leaves.
- Styling statements (style, classDef, class, linkStyle, click) and subgraph frames are accepted but not drawn; they are listed as ignored lines. The output is plain SVG (no scripts, no external references) that passes the site’s strict sanitiser; arrowheads are drawn as shapes so PNG export keeps them.
A Mermaid-like subset, not full Mermaid compatibility: complex features (subgraph frames, styling, class diagrams, Gantt charts) are not supported.
For scripts and AI agents
- JSON API:
POST https://diagramflowchartmaker.usefulweb.site/api/v1/calculate(same calculation as this page) - Interface description: OpenAPI 3.1 · AI guide: llms.txt
- MCP server (Streamable HTTP):
https://diagramflowchartmaker.usefulweb.site/mcp· tool namediagram_flowchart_maker
Example request
curl -s -X POST https://diagramflowchartmaker.usefulweb.site/api/v1/calculate \
-H 'content-type: application/json' \
-d '{"source":"flowchart TD\n start([Order received]) --> pay{Paid?}\n pay -->|Yes| pick[Pick items]\n pay -->|No| remind[/Send reminder/]\n remind --> pay\n pick --> stock{In stock?}\n stock -->|Yes| ship[[Ship parcel]]\n stock -->|No| back[(Backorder list)]\n back -.-> pick\n ship --> done((Done))","title":"Order handling"}'Related tools
- Embeddable Chart Builder – Make a self-contained chart to embed anywhere: inline SVG, standalone HTML, accessible snippet.