Every figure in the Studio is written in one engine: the language its source is in, and the renderer that draws it. flowss ships 110 of them. Some are the familiar diagram-as-code languages (Mermaid, PlantUML, Graphviz, D2). Some are chart grammars (Vega-Lite, Plotly). Many are specialist engines built into flowss that compute and check what they draw, such as a fault tree that works out its own probabilities or a state machine that tells you when it is not deterministic. This page is a decision guide. It helps you pick the right engine for the job, compares the engines that are easiest to confuse, explains the practical differences that matter (privacy, offline use, editing, conversion and plans), and ends with an index of every engine in the Studio's library, linked to its reference page.
At a glance
| Fact | Detail |
|---|---|
| Engines in total | 110 |
| In the Studio's engine library | 108, in ten named groups plus More |
| Engines that open in their own studio | BPMN 2.0 (the BPMN studio) and Weave (the Weave canvas) |
| FlowScript | In the Studio's library, and also the language of the Lab |
| Where to pick one | Engines & templates on the tool rail, the engine name at the top of the code sheet, or Change engine… in ⌘K |
| Reference pages | One per engine at /docs/engines/ followed by the engine's id, for example /docs/engines/mermaid. The full catalogue is at /docs/engines |
| Templates | 5,012 across all engines at the time of writing, and the number grows. Each engine row in the library shows how many it has |
| Plans | Every Studio engine works on every plan, including Free. The BPMN studio and Weave start on Starter |
How engines work in the Studio
A figure has exactly one engine at a time. The engine decides the syntax you write in the code sheet, how the canvas draws it, which templates apply, which checks run and which exports and conversions are on offer. You can have several figures open in tabs, each in a different engine.
You do not always have to choose an engine. When you describe a diagram to the AI, paste diagram code or open a file, flowss usually picks the engine for you (see Importing and converting). Choosing one yourself matters when you start from scratch, when you want a particular notation, or when you want an engine's checks or computations.
Picking and changing the engine
Opening the engine library
- Click Engines & templates at the top of the tool rail. Its tooltip names the current engine. The library opens beside the rail with two tabs, Engines and Templates.
- Or click the engine name at the top of the code sheet. Its tooltip reads "Engine: Mermaid — change engine", with your engine's name.
- Or press
⌘Kand run Change engine… ("The catalogue of every engine, searchable").
The / key opens the library on the Templates tab with its search box ready. That tab also shows a card describing the current engine, a Recent engines strip of engines you have used lately, and a Recent strip of recent templates.
Finding an engine
The Engines tab lists every engine in collapsible groups, each with a count. Each row shows the engine's colour, its name and how many templates it has. The current engine is highlighted. Hovering over a row shows the engine's description, and for engines drawn by an outside service, a notice saying so (see Where the picture is drawn, below).
The search box reads "Search engines — name, or what you're drawing…". It matches far more than names:
- Names and ids. For example,
dbml,pikchrormarkmap. - What you are drawing. For example,
critical path,org chart,sequence,project scheduleorthreat model. - The tool you are replacing. For example,
Visio,dbdiagram,MinitaborMicrosoft Project. - Figures the engine has templates for. For example,
forest plotfinds Plotly andkaplan meierfinds the survival-curve templates.
While you search, every group that contains a match opens to show it. If nothing matches you see No engine matches, with a suggestion to describe what you are drawing instead. Press Escape in the box, or click the × at its end, to clear the search.
What happens when you switch
Clicking an engine row switches the current figure to that engine. It replaces the figure's source with that engine's starter template. It does not convert your diagram. The previous source is kept in the undo history, so ⌘Z brings it back.
To keep your diagram and move it to another engine, convert it instead:
- Open the ⋮ menu, or press
⌘K, and choose Convert to another engine… ("Instant where a transpiler exists, AI for any other engine"). - Under Instant, pick a direct translation if one is offered for your engine (see Converting later, below). These run in your browser, cost nothing and need no AI.
- Otherwise, under Convert with the flowss Studio Agent to…, search for and pick any other engine. AI conversion needs AI on your plan.
Tip: To try another engine without risking your diagram, start a New figure (⌥⌘N) and pick the engine there. Your original stays in its own tab.
Start with what you are trying to show
Find your job in the left column. "Start with" is the best default, and "Also consider" lists the alternatives worth knowing.
Software, systems and architecture
| You want to… | Start with | Also consider |
|---|---|---|
| Sketch a flowchart quickly, or embed one in Markdown or a wiki | Mermaid | D2, Graphviz |
| Draw any classic UML diagram: class, use case, activity, component, deployment, object, timing | PlantUML | Mermaid, Nomnoml |
| Draw a sequence diagram whose calls and replies are checked | Sequence & interaction | Mermaid, PlantUML |
| Specify a state machine you need to be correct | State machine (FSM) | Mermaid state diagrams |
| Model concurrency, resources and synchronisation | Petri Nets | State machine (FSM) |
| Document a software system as a C4 model | Structurizr DSL | D2, Mermaid C4 |
| Draw cloud infrastructure and have it checked | Cloud architecture | D2 |
| Model an enterprise architecture | ArchiMate | Structurizr DSL |
| Model a system's parts, ports and interfaces (MBSE) | SysML v2 (structure) | PlantUML |
| Draw a network topology with subnets and addresses | Network (nwdiag) | Graphviz, D2 |
| Plan a data-centre rack | Server Rack | |
| Draw any graph, dependency tree or DAG with full layout control | Graphviz | D2 |
| Show a large network or knowledge graph | Cytoscape (Network) | Graphviz |
| Describe a data flow, or a threat model with trust boundaries | Data flow diagram | Attack tree |
| Map a domain from an event-storming workshop | Event storming | |
| Explain a grammar or an API's syntax | Railroad / syntax diagram | |
| Turn an ASCII diagram from a README into a clean figure | SVGBob (ASCII) | Ditaa (ASCII), Pikchr |
| Show where CPU time goes | Flame Graph |
Data models, hardware and protocols
| You want to… | Start with | Also consider |
|---|---|---|
| Design a relational schema | DBML | ERD, Mermaid ER diagrams |
| Lay out a protocol header or register, with the layout checked | Packet & bit fields | Packet diagrams (packetdiag), Bytefield |
| Draw digital timing waveforms or a bus protocol | WaveDrom | |
| Document a cable harness with a bill of materials | WireViz | |
| Draw a block symbol from a VHDL or Verilog declaration | Symbolator (HDL) | |
| Draw gates, a Karnaugh map or a truth table | Digital logic | |
| Draw an electrical schematic | Circuit schematic |
Processes, operations and teams
| You want to… | Start with | Also consider |
|---|---|---|
| Model a process to standard, then lint and simulate it | BPMN 2.0, in the BPMN studio | Swimlane process |
| Show handoffs between teams | Swimlane process | BPMN 2.0 |
| Design a service front stage and back stage | Service Blueprint | |
| Capture decision logic as tables with gaps and overlaps checked | DMN | |
| Show who does what on a project | RACI matrix | |
| Draw an organisation | Org chart | |
| Show a work board with WIP limits | Kanban board | Flow metrics (CFD) |
| Measure a value stream, a queue, a control chart or a Pareto | The flow-systems engines | See Flow-systems analysis in Studio |
| Analyse risk, safety or reliability | Fault tree (FTA), Bowtie risk, Reliability block diagram | Attack tree, Risk matrix |
| Keep a risk register with a scored heat map and appetite check | Risk matrix | Bowtie risk |
| Find a root cause with a team | Fishbone (Ishikawa) | Pareto chart |
| Program or document PLC logic | Ladder logic (PLC), GRAFCET / SFC | |
| Draw a chemical process with instruments | P&ID (chemical eng) | |
| Model feedback loops and accumulations | System dynamics (stock & flow) |
Planning, product and strategy
| You want to… | Start with | Also consider |
|---|---|---|
| Schedule a project on a real calendar, with the critical path | Gantt & critical path | PERT / CPM network |
| Plan releases around a user journey | User story map | |
| Show a product or programme roadmap whose dependencies are checked against its dates | Roadmap | Gantt & critical path |
| Map a customer's experience stage by stage, with the emotion curve computed | Customer journey map | Service Blueprint |
| Choose between options on weighted criteria, or run a Pugh concept selection | Decision matrix (weighted / Pugh) | Quadrant Matrix |
| Compare choices under uncertainty by expected value | Decision tree | Decision matrix (weighted / Pugh) |
| Lay out a business model or a Lean Canvas | Business model canvas | |
| Map a value chain against evolution | Wardley Maps | |
| Prioritise on a 2×2 | Quadrant Matrix | |
| Show conversion through stages | Sales / conversion funnel | Sankey flow |
| Walk from one total to another | Waterfall Chart | |
| Show KPIs against targets | Bullet / KPI | |
| Map an argument's support and objections | Argument map | |
| Brainstorm or outline as a mind map | Markmap (Markdown) | Mind maps on the Weave canvas |
| Show history across centuries | Timeline (history) |
Charts and data
| You want to… | Start with | Also consider |
|---|---|---|
| A plain scatter, line, bar, histogram or box plot, or a plotted formula | Plot | Vega-Lite |
| Statistical charts with layering and faceting | Vega-Lite | Plotly |
| Scientific plots: 3D surfaces, contours, survival curves, dose–response, ternary | Plotly | |
| A bespoke visualisation the others cannot express | Vega | |
| Flows between stages, budgets or energy balances | Sankey flow | |
| Hierarchical proportions | Treemap (squarified) | Marimekko / Mosaic |
| Values by country or US state | Choropleth (GIS) | |
| Daily activity over a year | Calendar Heatmap | |
| Terms sized by weight | Word Cloud | |
| Overlapping sets | Venn / Euler | |
| A chart straight from a CSV | Use Data → Chart (⌘D), which picks the engine for you | See Data, timeline, TikZ and the diagram tools |
Research, science and teaching
| You want to… | Start with | Also consider |
|---|---|---|
| A systematic-review flow whose numbers balance | PRISMA 2020 flow | FlowScript |
| A trial flow (CONSORT) or study model whose numbers propagate | FlowScript | Lab |
| A causal diagram with confounders and backdoor paths | Causal DAG | |
| A family pedigree in clinical notation | Genetics pedigree | |
| A phylogenetic tree | Phylogeny (Newick) | |
| A 3D protein or molecule | 3D Molecules (3Dmol) | |
| Drug interactions by severity | Drug-interaction network | |
| Typeset equations | LaTeX (KaTeX) | |
| A free-body diagram | Free-body diagram | |
| A phase diagram | Phase diagram (materials) | |
| Orbits or a Hertzsprung–Russell diagram | Astronomy (orbital + HR) | |
| Labelled anatomy for teaching | Anatomy / body systems | The Science studio |
| A stratigraphic column or Harris matrix | Stratigraphy / Harris matrix | |
| A parse tree for linguistics | Syntax tree (linguistics) | |
| Economics teaching diagrams | Economics diagrams | |
| A floor plan | Floor plan (2D) | Floor plan (3D), Floor plan (3D WebGL) |
| Music: a melody, a piano roll or chord theory | Music notation | Piano roll (MIDI), Music chords |
| A chess position | Chess (FEN) | |
| A tournament bracket | Tournament bracket | |
| Anything else, drawn exactly as you specify | Raw SVG | Excalidraw for a hand-drawn look |
Choosing between close cousins
Mermaid, PlantUML, D2 and Graphviz
| Mermaid | PlantUML | D2 | Graphviz (DOT) | |
|---|---|---|---|---|
| Best at | Quick diagrams of many kinds in one familiar syntax | Strict UML, plus many specialty diagrams | Clean architecture diagrams with containers | Graphs and DAGs, with fine layout control |
| Diagram types | Flowcharts, sequence, class, ER, state, Gantt, mind maps, C4 and dozens more | Class, sequence, use case, activity, state, component, deployment, timing, mind map, WBS, Gantt and more | Boxes, arrows and nested containers | Any node-and-edge graph |
| Drawn where | In your browser | By a PlantUML server (see below) | In your browser | In your browser |
| Diagram tools | All six direct tools (no Duplicate in class diagrams) | Rename and Ask the flowss Studio Agent… | Rename and Ask the flowss Studio Agent… | Delete, Colour, rename and Ask the flowss Studio Agent… |
| Instant conversion | Flowcharts to D2 or PlantUML | None | To Mermaid | To D2 |
| Templates | 344 | 80 | 39 | 520 |
Choose Mermaid when the diagram has to live in Markdown elsewhere, PlantUML when the audience expects textbook UML, D2 for architecture with grouping, and Graphviz when layout control matters more than style.
Sequence diagrams
Mermaid and PlantUML draw sequence diagrams, and draw what you type. The Sequence & interaction engine also checks the conversation. It flags, for example, a reply returned to someone who never made the call, a call that is never returned, a message to a participant after it has been destroyed, a reply sent on only one branch of an alt, and two branches of an alt whose guards overlap. Use it when the interaction is a specification someone will build from.
State machines, Petri nets and statecharts
Use State machine (FSM) when you need to know the machine is sound: it reports nondeterminism, unreachable states and states with no way out. Use Petri Nets for concurrency, shared resources and synchronisation. Diagram Intelligence reports deadlocks, boundedness and dead transitions there. Use a Mermaid state diagram for a quick illustration.
Schedules: Gantt, PERT and Mermaid Gantt
| Gantt & critical path | PERT / CPM network | Mermaid gantt | |
|---|---|---|---|
| Computes the critical path and float | Yes | Yes | No |
| Working calendar and holidays | Yes | No (unitless days) | No |
| Relationship types | All four (FS, SS, FF, SF), with lead and lag | Finish-to-start only | Finish-to-start only |
| Resources and over-allocation | Yes | No | No |
| Deadlines and stated dates checked | Yes | No | No |
| Views | Bars, or view network | Network | Bars |
Risk: fault tree, bowtie, attack tree and RBD
| Engine | Answers | Inputs |
|---|---|---|
| Fault tree (FTA) | How likely is this failure, which combinations cause it, and which component matters most? | Gates and basic-event probabilities or rates |
| Bowtie risk | Which barriers stand between each threat and each consequence, and how much risk is left? | Threat likelihoods, barrier effectiveness, consequence severity |
| Attack tree | What is the cheapest way for an attacker to reach the goal? | AND/OR goals, leaf cost, skill and detection |
| Reliability block diagram | How reliable and available is the whole system, and does the redundancy pay? | Block reliabilities or rates, and arrangements |
| Risk matrix | How is each risk rated before and after its controls, what is the total exposure, and which risks exceed appetite? | Likelihood and impact per risk, controls, residual and target positions, bands and appetite |
| Decision tree | Which choice has the best expected value, and how risky is it? | Decisions, chance branches with probabilities, costs and payoffs |
Database schemas: DBML, ERD and Mermaid ER
DBML is the most complete. It has tables, columns, keys, indexes, enums and explicit references, it round-trips with dbdiagram.io, and it gets the most analysis in Diagram Intelligence: missing keys, dangling or unindexed foreign keys and foreign-key cycles. ERD is a minimal entity-relationship language with dependable layout. Use Mermaid ER diagrams when the schema needs to sit in Markdown. DBML converts instantly to both Mermaid ER and ERD.
Charts: Plot, Vega-Lite, Plotly and Vega
| Plot | Vega-Lite | Plotly | Vega | |
|---|---|---|---|---|
| Source | A short text language | A JSON specification | A JSON specification | A JSON specification |
| Best for | Plain XY charts and plotted formulas | Statistical charts, layers and facets | Scientific, 3D and specialist charts | Custom visualisations |
| Renders | Inside flowss, offline, and by the render API | In your browser | In your browser | In your browser |
| Templates | 18 | 141 | 245 | 13 |
Data → Chart writes Vega-Lite for you, and the Figure studio is the place for journal-ready, multi-panel figures from data.
Architecture: Structurizr, D2, Cloud architecture, ArchiMate and SysML
Use Structurizr DSL to define one C4 model and draw several views of it. Use D2 for quick architecture diagrams. Use Cloud architecture for AWS, Azure, Google Cloud and Kubernetes with real containment (account, region, network, zone, subnet, cluster, namespace). It checks things such as a datastore reachable from the internet, or redundancy claimed inside a single zone. Use ArchiMate for enterprise architecture to the 3.2 specification, and SysML v2 for systems engineering with port directions and interfaces checked.
Bit fields: Packet, packetdiag, Bytefield and WaveDrom
Packet & bit fields checks the layout, naming overlapping fields, unclaimed bits and overflows, at 8, 16, 32 or 64 bits a word, in either bit order. packetdiag and Bytefield draw RFC-style layouts in their own syntaxes. WaveDrom is for timing diagrams and also draws register fields.
ASCII to figure: SVGBob, Ditaa and Pikchr
SVGBob turns ASCII art into clean lines. Ditaa does the same with colour-fill markers. Pikchr is a small language of boxes, arrows and splines rather than ASCII art. All three are drawn by an outside render service.
Floor plans
Floor plan (2D) draws a top-down plan. Floor plan (3D) draws the same source as a printable axonometric view. Floor plan (3D WebGL) shows it in an interactive 3D viewer you can orbit, which is best on screen rather than in print.
Mind maps
Markmap (Markdown) draws a mind map from a Markdown outline, and the Studio's Mind map outliner edits it from the keyboard. For a free-form mind map you can rearrange by hand, convert it instantly to a Weave mind map, or work in Weave.
Practical considerations
Where the picture is drawn
Engines fall into three groups by where their pictures are drawn. This matters for confidential work, offline use and automation.
| Group | Engines | What it means |
|---|---|---|
| Drawn inside flowss (83 engines) | Every engine not listed in the other two rows, including all the flow-systems engines, Plot, DBML, Sankey, Gantt and the research engines | Works offline. The source never leaves flowss. The render API can draw it on a server |
| Drawn in your browser (13 in the Studio) | Mermaid, Graphviz, D2, Vega-Lite, Vega, Plotly, Nomnoml, LaTeX (KaTeX), 3D Molecules, Cytoscape, Markmap, Raw SVG, Floor plan (3D WebGL) | Works offline in the browser. The headless render API cannot draw these, so use the Studio or an embed |
| Drawn by an outside render service (12) | PlantUML, Pikchr, Bytefield, Structurizr DSL, SVGBob, ERD, Excalidraw, WireViz, Ditaa, Symbolator, Network (nwdiag), Packet diagrams (packetdiag) | Needs a connection. The diagram source is sent to the service to be drawn |
For the outside services, the Studio tells you where you choose. The engine's tooltip in the library, and a line under the code sheet's header, say "Drawn by Kroki, a third-party render service: this source is sent to it." For PlantUML the line reads "Drawn by a PlantUML server (the public plantuml.com unless self-hosted): this source is sent to it."
These services also have daily render limits, counted on each settled edit: 300 renders a day on Free and Starter, 1,000 on Plus, 2,500 on Ultra and 5,000 on Enterprise. Limits reset at midnight UTC. The largest source they accept is 30,000 characters for PlantUML and 100,000 characters for the others.
Warning: If a diagram's source is confidential, choose an engine drawn inside flowss or in your browser. For example, use DBML or Mermaid instead of ERD, D2 or Mermaid C4 instead of Structurizr, and Packet & bit fields instead of packetdiag or Bytefield.
Editing by clicking
Clicking a label on a rendered diagram opens a rename box. The new name is written straight into the source wherever flowss can find the label there. When it cannot, the rename is handed to AI, which needs AI on your plan. The Diagram tools panel adds direct edits: Delete, Duplicate, Add after, Add child, Colour and Bigger. These work fully on Mermaid (except Duplicate in class diagrams), partly on Nomnoml (no Bigger) and Graphviz (Delete and Colour), and other engines use Ask the flowss Studio Agent…. If you like to edit by pointing, Mermaid is the most capable choice. See Data, timeline, TikZ and the diagram tools.
Engines that check and compute
Many engines built into flowss do more than draw. They check the document against the rules of its notation, or compute the numbers it is about, and they write the results into the figure. Examples include State machine, Sequence & interaction, SysML v2, Cloud architecture, DMN, Server Rack, PRISMA 2020, Packet & bit fields, Gantt and every flow-systems engine. Choose one of these when the figure is a claim someone will act on. See Flow-systems analysis in Studio.
Diagram Intelligence coverage
Diagram Intelligence (⇧⌘X) adds structural analysis for Mermaid (flowcharts, state, sequence and class diagrams), Graphviz, D2, PlantUML, Structurizr, Cytoscape, ERD, DBML, Petri Nets, PERT, State machine, Sankey, Causal DAG, Attack tree, Digital logic, Wardley Maps, Newick, Chess and FlowScript. Process diagrams in Mermaid, Graphviz, D2, PlantUML, Structurizr and Cytoscape also get lead time, throughput and the bottleneck.
Converting later
You are never locked in. Convert to another engine… offers:
| From | Instant, without AI |
|---|---|
| Mermaid (flowcharts) | D2, PlantUML |
| D2 | Mermaid |
| Graphviz | D2 |
| DBML | Mermaid ER, ERD |
| Markmap | Weave mind map |
Any other pair converts with AI. An instant conversion that would lose structure is not applied. Instead you see what would be lost and a Convert with the flowss Studio Agent instead button. Styling that does not carry over is named in a warning after the conversion.
Plans
Every engine in the Studio's library, including FlowScript, works on every plan, including Free, with no limit on how much you draw. Every template written for those engines is included too. The BPMN studio and Weave, which have engines of their own, start on Starter. AI features, such as describing a diagram, AI conversion and TikZ export, need AI on your plan. See Plans and what they include.
The Studio's engine library, group by group
The library lists 108 engines in these groups. Each name links to its reference page.
Flow & UML
| Engine | Best for |
|---|---|
| Mermaid | Versatile text-to-diagram language, compatible with Mermaid 11 |
| PlantUML | Full UML and specialty diagrams |
| Nomnoml | Sketchy, hand-drawn-style UML |
| Service Blueprint | Five-lane service blueprints |
| Petri Nets | Places, transitions and tokens |
| State machine (FSM) | Finite state machines, checked |
| Org chart | Organisations from an indented outline |
| DMN | Decision requirements and decision tables, checked |
| Sequence & interaction | Sequence diagrams checked against the call stack |
| Swimlane process | Cross-functional processes |
| Kanban board | Boards with WIP limits |
| RACI matrix | Responsibility assignment |
Flow systems
| Engine | Best for |
|---|---|
| Value stream map | Lean maps with lead time and flow efficiency computed |
| Flow metrics (CFD) | Cumulative flow with WIP, cycle time and throughput |
| Data flow diagram | Gane–Sarson DFDs and trust boundaries |
| SIPOC | Six Sigma scoping with requirement gaps |
| Design structure matrix | Dependency matrices with partitioning |
| Queueing network | Stations solved for utilisation and waiting time |
| Event storming | Domain events with model gaps flagged |
| User story map | Releases sliced across a user journey |
| Customer journey map | Journey stages with the emotion curve, moment of truth and pain points computed |
| Business model canvas | Business Model and Lean Canvas with an evidence audit |
| Spaghetti diagram | Motion studies with travel measured |
| Decision matrix (weighted / Pugh) | Weighted scoring and Pugh selection, with the sensitivity of the winner |
| Gantt & critical path | Schedules computed from dependencies and a calendar |
| Roadmap | Lanes, dates and statuses, with every dependency checked |
Risk & reliability
| Engine | Best for |
|---|---|
| Reliability block diagram | System reliability, MTTF and availability |
| Attack tree (cybersec) | Threat modelling with cost roll-up |
| Fault tree (FTA) | Exact top-event probability and cut sets |
| Bowtie risk | Barrier-based residual risk |
| Decision tree | Expected-value rollback, with the optimal choice marked |
| Risk matrix | Risk registers and heat maps, scored and checked against appetite |
Quality & control
| Engine | Best for |
|---|---|
| Control chart (SPC) | Control limits, Nelson rules and capability |
| Pareto chart | The vital few, computed |
| Ladder logic (PLC) | Ladder rungs solved for one scan |
| GRAFCET / SFC | Sequential function charts, checked |
Architecture
| Engine | Best for |
|---|---|
| D2 | Declarative architecture diagrams |
| Structurizr DSL | C4 models with multiple views |
| Graphviz (DOT) | Any graph |
| Pikchr | Compact documentation diagrams |
| Wardley Maps | Value chain against evolution |
| SVGBob (ASCII) | ASCII art to SVG |
| ArchiMate | Enterprise architecture, ArchiMate 3.2 |
| Cloud architecture | AWS, Azure, Google Cloud and Kubernetes, checked |
| SysML v2 (structure) | Parts, ports and interfaces, checked |
| Server Rack | Rack elevations, checked |
Charts & data
| Engine | Best for |
|---|---|
| Vega-Lite | Statistical and layered charts |
| Vega | Custom visualisations |
| Plotly | Scientific and 3D plots |
| Sankey flow | Weighted flows between stages |
| Treemap (squarified) | Hierarchical areas |
| Sales / conversion funnel | Stage-by-stage conversion |
| Music chords (cycle of fifths) | Cycle of fifths and chord progressions |
| Plot | Plain XY charts and functions |
| Choropleth (GIS) | Values by country or US state |
Schemas & layouts
| Engine | Best for |
|---|---|
| DBML | Relational schemas |
| ERD | Minimal entity-relationship diagrams |
| Bytefield | RFC-style byte layouts |
| WaveDrom | Timing diagrams and register maps |
| WireViz | Cable harnesses |
| Packet & bit fields | Headers and registers, checked |
| Railroad / syntax diagram | Grammars |
Research & analysis
| Engine | Best for |
|---|---|
| Causal DAG | Causal diagrams for inference |
| PRISMA 2020 flow | Systematic-review flows that balance |
| Genetics pedigree | Clinical pedigrees |
| Argument map | Claims, support and objections |
| Fishbone (Ishikawa) | Root-cause analysis |
| Venn / Euler | One to three overlapping sets |
| Free-body diagram | Forces and moments |
| P&ID (chemical eng) | Process and instrumentation |
| Phase diagram (materials) | Pressure–temperature and binary diagrams |
Engineering & physical
| Engine | Best for |
|---|---|
| Circuit schematic | Textbook schematics |
| Floor plan (2D) | Top-down plans |
| Floor plan (3D) | Printable axonometric views |
| PERT / CPM network | Activity networks with slack |
| Drug-interaction network | Interactions by severity |
| Syntax tree (linguistics) | Constituency trees |
| Stratigraphy / Harris matrix | Layers and relative chronology |
Domain-specific
| Engine | Best for |
|---|---|
| 3D Molecules (3Dmol) | Proteins and ligands in 3D |
| Phylogeny (Newick) | Phylogenetic trees |
| LaTeX (KaTeX) | Equations |
| Anatomy / body systems | Labelled body diagrams |
| Music notation | Single-voice melodies |
| Piano roll (MIDI) | Melodies on a keyboard grid |
| Chess (FEN) | Board positions |
| Tournament bracket | Single-elimination brackets |
| Astronomy (orbital + HR) | Orbits and HR diagrams |
| Digital logic (gates / K-map / truth table) | Gates, K-maps and truth tables |
| System dynamics (stock & flow) | Stocks, flows and feedback |
| Timeline (history) | Eras and events across centuries |
More
| Engine | Best for |
|---|---|
| Cytoscape (Network) | Large biological and knowledge networks |
| Raw SVG | Hand-written SVG, and the target for the icon library's Insert |
| Markmap (Markdown) | Mind maps from Markdown |
| Excalidraw | Hand-drawn whiteboard look from Excalidraw JSON |
| Ditaa (ASCII) | ASCII art with colour fills |
| Symbolator (HDL) | VHDL and Verilog symbols |
| FlowScript | Typed research models whose numbers propagate |
| Network (nwdiag) | Network topology |
| Packet diagrams (packetdiag) | Column-based packet layouts |
| Floor plan (3D WebGL) | Interactive 3D floor plans |
| Economics diagrams | Supply and demand, IS–LM and more |
| Quadrant Matrix | 2×2 matrices |
| Word Cloud | Weighted terms |
| Waterfall Chart | Bridges and variance walks |
| Flame Graph | Profiler stacks |
| Calendar Heatmap | Daily values over a year |
| Marimekko / Mosaic | Share × volume |
| Bullet / KPI | KPIs against targets |
Engines outside the Studio's library
| Engine | Where it opens |
|---|---|
| BPMN 2.0 | The BPMN studio, with a full modeller, linting and simulation |
| Weave | The Weave drag-and-drop canvas |
For the engines grouped by subject, with syntax and examples, see the engine reference pages: Software and architecture, Business, strategy and planning, Process, operations and quality, Charts and data visualisation and Maths, science and academic.
Tips
- Search for the job, not the engine. Type what you are drawing ("org chart", "critical path", "threat model") or the tool you are leaving ("Visio", "Minitab") into the engine search.
- Start from a template. An engine's templates are the fastest way to learn its syntax. Open the Templates tab, or see Starting from a template.
- Prefer engines that check, for work that matters. A sequence, state machine, schedule or risk model that checks itself catches the mistakes a drawing hides.
- Keep confidential sources in flowss. Engines drawn inside flowss or in your browser never send your source to an outside service.
- Convert rather than switch. Clicking another engine replaces your source with its starter. Convert to another engine… carries your diagram across.
- Pick Mermaid for maximum portability. Mermaid source renders in many other tools and documentation sites, and it has the richest click-to-edit support in the Studio.
Limits and known constraints
- One engine per figure. To combine notations, use several figures, or compose them on a canvas such as Weave.
- Switching resets the source. Clicking an engine row replaces the source with that engine's starter. Undo with
⌘Z, or use Convert to another engine… instead. - Outside services need a connection. The twelve engines drawn by an outside service need a connection, send their source to that service, and are subject to daily render limits and source-size limits.
- The render API draws only built-in engines. It cannot draw engines that render in your browser or through an outside service.
- Instant conversion covers a few pairs. Other conversions use AI, which needs AI on your plan and may not carry every detail. Check the result.
- BPMN and Weave live elsewhere. They are not in the Studio's engine list, and their studios start on Starter.
Troubleshooting
| What you see | What it means | What to do |
|---|---|---|
| My diagram disappeared after I clicked an engine | Switching engine loads that engine's starter | Press ⌘Z to get it back, then use Convert to another engine… |
| No engine matches | Nothing in the catalogue matches your search | Describe what you are drawing ("sequence", "org chart", "critical path") or name the tool you are replacing |
| I cannot find BPMN or Weave in the list | They open in their own studios | Open the BPMN studio or Weave, or use Send to another studio… |
| "Drawn by Kroki, a third-party render service: this source is sent to it." | The engine is drawn by an outside service | Nothing is wrong. Choose another engine if the source is confidential |
| "PlantUML render limit reached for your plan …" or "Diagram render limit reached for your plan …" | You have used today's renders for an outside-service engine | Wait until midnight UTC, upgrade, or switch to an engine drawn inside flowss |
| "PlantUML source is too large (>30,000 characters)" or "Diagram source is too large (>100,000 characters)" | The source exceeds the service's limit | Split the diagram into several figures |
| An instant conversion refused, with Convert with the flowss Studio Agent instead | The direct translation would have lost structure | Use Convert with the flowss Studio Agent instead (needs AI), or keep the original engine |
| A conversion warning naming styling that did not carry over | The structure converted, but some styling did not | Restyle in the new engine, or undo with ⌘Z |
Related pages
- The full engine catalogue
- The Studio editor
- Starting from a template
- Importing and converting
- Flow-systems analysis in Studio
- Software and architecture engines
- Business, strategy and planning engines
- Process, operations and quality engines
- Charts and data-visualisation engines
- Maths, science and academic engines
- Embedding and the render API
- Plans and what they include
