A template is a finished, working diagram you can open, change and make your own — a PRISMA 2020 flow, a three-tier architecture, a Kaplan–Meier curve, a state machine, a phylogeny. flowss ships more than 5,000 of them across more than a hundred engines, so you rarely need to start from a blank page. This page explains what a template is, every way to reach one, exactly what happens to your work when you load one, how the Studio's template library and the public gallery at /templates search, and the limits and messages you may meet.
At a glance
| Question | Answer |
|---|---|
| How many templates? | 5,012 at the time of writing, in 17 categories (the gallery header shows the live count) |
| Where do I browse them in the Studio? | The rail's Engines & templates button, its Templates tab; or press / |
| Where do I browse all of them? | The public gallery at /templates, which needs no account to browse, preview or copy source |
| Which plan? | Studio templates open on every plan, including Free. Templates written for BPMN, Weave and the Lab open in those studios, which start on Starter |
| Does a template replace my work? | Picking one in the Studio's library replaces the open figure's content (undo with ⌘Z). Opening one from the gallery, a template page or a link always adds a new figure |
| Does it use AI? | No. Templates are plain source; loading one never spends AI points |
| Can I keep favourites? | Yes — star a template in the library. Favourites and recently used templates are remembered in this browser |
What a template is
Every template has five parts:
| Part | Example |
|---|---|
| Title | "PRISMA 2020 flow" |
| Engine | The language it is written in, such as Mermaid, Graphviz, Vega-Lite or FlowScript |
| Category | One of the 17 categories below |
| Description | One or two lines on what it shows |
| Source | The full diagram source, which becomes your figure's source when you load it |
Because the source is ordinary diagram code, everything you can do to a figure you can do to a template once it is loaded: edit the code, click labels on the canvas, restyle it, convert it to another engine, export it.
The categories
| Category | What it covers |
|---|---|
| UML & Software | Class, sequence, state, use-case, component, deployment |
| Flow & Process | Flowcharts, BPMN, swimlanes, decision trees, PRISMA, CONSORT |
| Data & Schema | ER diagrams, data flow, knowledge graphs, ontologies |
| Architecture | C4 model, system context, deployment, network topology |
| Project & Planning | Gantt, timeline, kanban, mind map, roadmap, journey |
| Research & Academic | PRISMA, CONSORT, concept map, causal loop, DAG, theory of change |
| Scientific Plots | Scatter, line, heatmap, box, violin, density, contour, regression |
| Mathematics | Graphs, automata, Venn, set theory, lattices, function plots |
| Life Sciences | Phylogenetic trees, pathways, gene networks, anatomy |
| Chemistry & Physics | Energy diagrams, circuits, free-body, optics, reaction networks |
| Geo & Spatial | Choropleth maps, geographic flow, stratigraphy |
| Business & Strategy | Funnels, journeys, OKRs, roadmaps, pricing structures |
| Operations & Ops | Incident response, hiring, procurement, support, triage |
| AI & Pipelines | RAG, training pipelines, agentic workflows, model orchestration |
| Lean & Flow | Value streams, flow metrics, SIPOC, story maps, control charts, Pareto |
| Risk & Reliability | Fault trees, bowties, reliability blocks, barriers, failure analysis |
| Custom / SVG | Hand-crafted SVG schematics for specialised research figures |
Which studio a template opens in
Most templates belong to the Studio. A few engines have a studio of their own, and their templates open there instead:
| Engine | Opens in | Plan |
|---|---|---|
| Every Studio engine (Mermaid, Graphviz, PlantUML, Vega-Lite, the native flowss engines and the rest) | The Studio | Every plan |
| BPMN 2.0 | BPMN | Starter and above |
| Weave boards | Weave | Starter and above |
| FlowScript | The Lab, for the Lab's own FlowScript templates; the Studio for the couple of hand-written FlowScript starters that are not Lab templates | Lab: Starter and above |
BPMN and Weave are not offered as engines in the Studio's library, so their templates are reached through the gallery or inside their own studios.
Every way to reach a template
| From | How | What happens |
|---|---|---|
| The Studio rail | Engines & templates → Templates tab | Loads into the open figure, replacing it |
| Anywhere in the Studio | Press / | Opens the Library on Templates with the search box focused |
| The file menu | ⋮ → Templates… | Same as / |
| The command palette | ⌘K → Templates… | Same as / |
| An empty figure | Browse templates on the empty-canvas card | Same as / |
| The Library's Shuffle button | Shuffle | Loads a random template for the current engine into the open figure |
| The Library's Engines tab | Select an engine | Switches the open figure to that engine and loads the engine's first template as a starter |
| The launchpad | Pick an engine | Opens a new figure on that engine's starter template |
| The command palette | ⌘K anywhere (including in the Studio), type a template's name, choose it | Opens the Studio with the template as a new figure, carried in a share link |
| The gallery | /templates → a card's Open in Studio (or Open in BPMN, Open in Weave, Open in Lab) | Opens the right studio with the template as a new figure |
| A template's page | /templates/<id> → Open in Studio | Same as the gallery |
| An engine's reference page | /docs/engines → an engine → Sample templates | Each sample card opens the template; All N → opens the gallery filtered to that engine |
| A link | /studio?template=<template id> | A new figure holding the template |
The Studio's template library
Select Engines & templates on the rail (its label names the current engine, for example Engines & templates — Mermaid). A flyout titled Library opens beside the rail with two tabs, Engines and Templates. On a phone it opens as a bottom sheet. Escape, a click outside it, or × (Close the library) closes it; picking a template closes it too, so you see the result.
The Templates tab always shows the templates for the current engine. To browse another engine's templates, pick that engine on the Engines tab first — but remember that picking an engine loads its starter into the open figure (see below), so make a new figure first if you want to keep what you have.
The tab has five parts, top to bottom.
1. The engine card
A card in the engine's colour shows the engine's name, a badge naming the tool it is compatible with where there is one, and a one-paragraph description of the engine. If the figure names an engine that no longer exists, the card says so and your source is left untouched.
2. Recent engines and Recent
| Strip | What it shows |
|---|---|
| Recent engines | Up to five engines you have used, ranked by how often and how recently, excluding the one you are on. Select one to switch to it (which loads its starter, as on the Engines tab) |
| Recent | Up to six templates you loaded recently, from any engine. Selecting one switches to its engine if needed and loads it |
Both strips appear only once you have some history, and both are remembered in this browser.
3. Search and Shuffle
The search box reads Search Mermaid… (with the current engine's name) and shows a / hint. Under it, a count says how many templates match, such as 37 templates, and the Shuffle button loads a random template for the current engine (it is greyed out when the engine has none). Select × (Clear search) to empty the box.
4. The categories
With no search, templates are grouped by category. Each category header shows how many templates it holds, and — when you have starred some — how many favourites, for example ★2 · 14. The first category is open; select a header to open or close it. Only one category is open at a time.
Each template row shows its title, a two-line description, and a stripe in the engine's colour down its left edge. The template you loaded last is highlighted, and the library scrolls to it when you come back.
5. Favourites
Hover over a row to reveal its star; select it to mark the template a favourite (the star turns amber), and again to remove it (Unfavourite). The star can also be reached with Tab and toggled with Enter or Space. Favourites are counted in their category header and remembered in this browser.
If a search in this tab finds nothing, the list shows No matches with "No templates match "…"."
While the catalogue downloads — it loads after the editor so the editor is never kept waiting — the list shows shimmering placeholder rows labelled Loading templates. An engine with no templates shows No Mermaid templates yet (with its name) and suggests writing in the editor instead.
How template search works
The same search runs in the Studio's library and in the public gallery, so a query finds the same templates in both.
- Every word must match. "kaplan meier curve" finds templates containing all three words; filler words such as "of" and "the" are ignored.
- Words match at their start. "rag" finds RAG pipelines but not "drag" or "storage". A word of four or more letters also matches inside a longer word, so "flow" still finds "workflow". A single letter must be a whole word, except as the last word you are still typing.
- Punctuation, capitals and accents are ignored. "Kaplan–Meier", "kaplan-meier" and "kaplan meier" are the same search.
- British and American spellings match each other. "haemoglobin" and "hemoglobin", "colour" and "color", "visualisation" and "visualization" find the same templates.
- Symbol names work. C++, C#, F#, .NET, A/B, I/O and Q&A are searched as whole words.
- More than titles. The title, the template's id, its engine's name, its category's name and its description are all searched.
- Results are ranked. A hit in the title beats a hit in the id, engine or category, which beats a hit in the description; a whole word beats the start of a word, which beats a match inside a word.
In the Studio library, search is limited to the current engine. In the gallery it covers the whole catalogue, and the engine and category filters narrow it further.
The Engines tab and starter templates
The Engines tab lists every engine the Studio canvas offers, grouped by domain: Flow & UML, Flow systems, Risk & reliability, Quality & control, Architecture, Charts & data, Schemas & layouts, Research & analysis, Engineering & physical, Domain-specific, and More for anything not in a group. Each group shows how many templates its engines hold, each engine row shows its own template count, and hovering a row shows the engine's description (and, for PlantUML and the Kroki engines, that its source is sent to an outside render service). Select a group header to fold it; the Studio remembers which groups you keep open.
Search the engines with Search engines — name, or what you're drawing…. You can type an engine's name or the thing you are drawing ("sequence", "org chart", "critical path"): engines are matched against their names, descriptions, their group's name and the titles of their templates. An exact phrase wins outright; otherwise every word must match. Escape clears the search. With nothing found, the tab says No engine matches and suggests describing what you are drawing instead.
Selecting an engine switches the open figure to it and loads that engine's first template as a starter, replacing the figure's content. ⌘Z steps back to what you had; because the starter can arrive in two stages (a quick placeholder, then the full template), it may take two presses. The Library stays open after you pick an engine, so you can go straight to its Templates tab.
You can also change engine from the engine name at the top of the code sheet, or with ⌘K Change engine…. To carry your existing diagram across to another engine instead of replacing it, use ⋮ → Convert to another engine… (see Importing and converting).
What happens to your work when you load a template
| How you open the template | Effect on your work | Title of the result |
|---|---|---|
| Picking it in the Studio library (or Shuffle, or Recent) | Replaces the open figure's engine and source. One undo step | The figure keeps its own title |
| Picking an engine on the Engines tab | Replaces the open figure's content with the engine's starter. Undo with ⌘Z (sometimes two presses) | Unchanged |
Open in Studio from the gallery or a template page, or a ?template= link | Adds a new figure in front of your others; nothing you have is changed | The template's title |
Pick an engine on the launchpad, or a ?engine= link | Adds a new figure on that engine's starter | The engine's name |
| A ⌘K template row | Opens the Studio with the template as a new figure | Named after its engine, for example "Shared Mermaid diagram", not after the template — rename it from the title |
Tip: To try a template without touching the figure you are working on, press ⌥⌘N for a new figure first, then pick the template. On the Free plan this needs a free figure slot; loading into an existing figure never does.
When a new figure opens from a template or engine link, the editor shows a placeholder diagram immediately and swaps in the full template a moment later, once the catalogue has loaded. If you start typing into the placeholder before then, your typing is kept and the template is not swapped in.
On a Free account whose Studio is already full, a template opened from ⌘K arrives as an unsaved view rather than a new figure: you can read and edit it, its title shows (not saved), and the switcher offers Keep this shared diagram once you have made room. Template and engine links (?template=, ?engine=) are refused with a message instead.
The public template gallery
The gallery at /templates is open to everyone, signed in or not. Its header, The template collection, shows the total number of templates and engines; Find your template scrolls to the collection. A note above the grid sums up the rules: you can copy every template's source without an account and preview most of them, Studio templates open on a free account, and BPMN, Weave and Lab templates open on Starter.
| Control | What it does |
|---|---|
| Search box | × (Clear search) empties it. Placeholder: "Try "RAG", "swot", "kaplan-meier", "kubernetes", "antibody"…". Uses the search rules above across the whole catalogue |
| Engine filter | All engines plus every engine, with its template count, most templates first. Select a pill to filter; the active pill is highlighted |
| Category filter | All categories plus every category that has templates, with counts |
| Results line | "N results", with Clear filters while any filter or search is active |
| Cards | A live preview, the engine and category, the title (a link to the template's page), the description, Preview & source, and Open in Studio (or the studio the template belongs to) |
| Previous page / Next page | Results come 48 to a page. Between the buttons, Page 2 of 17; under them, "Showing 49–96 of 812." Changing the search or a filter returns you to the first page |
Your search and filters are written into the address (?engine=, ?category=, ?q=), so a filtered view is a link you can bookmark or send. With nothing matching, the gallery says "No templates match. Try different keywords or clear a filter."
A template's page
Each template has its own page at /templates/<id>:
| Part | What it holds |
|---|---|
| Back link | "Mermaid templates" (with the engine's name), back to the gallery filtered to that engine |
| Header | The title, the description, and tags for the engine, the category (a link to that category in the gallery) and "… syntax docs" (the engine's reference page) |
| Template preview | The rendered template. Most engines are drawn on the server; the rest are drawn in your browser, showing Rendering… briefly. If the source itself cannot be loaded the frame says "This template's source could not be loaded." |
| Make it your own. | The full source, with Copy source. The button reads Copied when it worked and "Couldn't copy — select it below" when the browser refused, in which case select the source and copy it by hand |
| Your next starting point | Bring your idea to life., Open in Studio (or the template's own studio), and a summary: Engine, Language, Category and Template id |
| More ways to start | Up to six related templates from the same engine and the same category |
Reading and copying the source never needs an account. Opening a workstation does, with a plan that includes it.
Templates in the command palette
Press ⌘K and type part of a template's name, description or engine: templates appear in their own Templates group (up to twelve at a time). With nothing typed, the palette opens on For you — up to six templates drawn first from the ones you use most and then from the starter pack of the role you chose in Settings (for example For you · Researcher). There is also a Browse templates row that opens the gallery.
| Role (Settings → Personalization & privacy) | Leans towards |
|---|---|
| Researcher | Systematic reviews, trial flows, causal DAGs, publication figures |
| Software engineer | Architecture, UML, sequence diagrams, ERDs, C4 models |
| Biologist | Pathways, gene networks, molecules, phylogenies, wet-lab figures |
| Clinician | CONSORT and PRISMA flows, care pathways, survival curves |
| Data scientist | Statistical charts, ML pipelines, dashboards, model diagrams |
| Educator | Concept maps, mind maps, timelines, teaching visuals |
| Product / ops | Flows, service blueprints, Wardley maps, org and process charts |
| Student | Notes, study maps, assignments |
Inside the Studio, the most direct route to a template is the Library (/ or ⌘K Templates…).
Making a template your own
Once loaded, a template is just your figure:
- Rename the figure from its title (double-click it).
- Edit the source in the code sheet, or click labels on the canvas to rename, recolour, duplicate or delete elements (see The Studio editor).
- Restyle it with Style — a journal palette or the layout direction (see Styling, themes and layout).
- Swap the engine if you prefer another notation with ⋮ → Convert to another engine….
- Export it, share it or send it to another studio.
Templates contain example values and labels. Replace them with your own before you publish; for research figures, check every number against your data.
Tips
- Search by what you are drawing, not by engine: "swimlane", "fault tree", "kaplan meier", "rag pipeline". The gallery searches every engine at once.
- Star the handful of templates you reuse; the favourite count in each category header shows where they are.
- Shuffle is a quick way to see what an unfamiliar engine can do.
- Choose a role in Settings so ⌘K's For you suggests templates for your field.
- Send someone a filtered gallery link (for example
/templates?category=research&q=prisma) rather than a list of names. - Keep a template you like as a figure of its own and duplicate it from the switcher whenever you need a fresh copy.
Limits and known constraints
- The Studio's library shows one engine's templates at a time; use the gallery to search across engines.
- Picking a template or an engine in the library replaces the open figure; there is no "insert alongside" in the library itself. Make a new figure first.
- BPMN and Weave templates are not listed in the Studio's library, and they, like the Lab's FlowScript templates, open in studios that need Starter.
- Favourites, recent templates and recent engines are stored in this browser and do not follow you to another device.
- On the Free plan, opening a template as a new figure (from the gallery, a template page or a link) needs a free figure slot; loading into an existing figure does not.
- A few template previews in the gallery are drawn in the browser and need JavaScript; the source is always shown in full.
Troubleshooting
| You see | What it means | What to do |
|---|---|---|
| "That template wasn't added, because it would be a new figure. Free accounts keep 3 figures in a studio, and this one is full…" | The Free plan's figure limit | Delete a figure, or load the template into an existing figure from the library instead |
| "There's no template called "…" in this build, so the editor opened on your own workspace instead." | The link names a template id that does not exist | Search the gallery for it by name |
| "The template catalogue couldn't be loaded (offline, or a stale build), so the requested template didn't open." | The catalogue did not download | Check your connection and reload the page |
| My figure was replaced when I picked a template | Library picks replace the open figure | Press ⌘Z, or restore it from History under the code |
| The Templates tab shows the wrong engine's templates | It always follows the current engine | Pick the engine you want on the Engines tab first (in a new figure if you want to keep your work) |
| No engine matches | Nothing matched the engine search | Try what you are drawing ("sequence", "org chart") or the tool you are replacing |
| "Couldn't copy — select it below" on a template page | The browser blocked clipboard access | Select the source shown below and copy it manually |
| "No templates match. Try different keywords or clear a filter." | The gallery filters exclude everything | Select Clear filters |
| Open in BPMN or Open in Weave asks you to upgrade | Those studios start on Starter | Copy the source instead, or see Plans and what they include |
