Storm2Flow generates professional process diagrams from plain-text descriptions using AI. Describe your process, choose a diagram type, and get a production-ready diagram in seconds.
New here? Start with the step-by-step Tutorial, then come back to this reference for the detail on any feature.
Last updated: May 20, 2026
+ button in the process library.That’s it. You can then edit, export, share, and version your diagrams.
Connect Microsoft sign-in for your company. If your organization is eligible, you may see an option to set up Microsoft (Entra / Azure AD) sign-in for your whole team. You start the setup, then forward the generated approval link to your company’s Microsoft admin. Once they approve, your colleagues can sign in with Microsoft and you become the organization admin. Nothing changes until your Microsoft admin approves.
The editor workspace is built from collapsible panels, each shown as an edge bookmark so you can shape your own focus around the work you are doing.
The right edge holds three inspector panels as bookmarks - Comments, Diagrams, and Assets - and only one is open at a time: opening one collapses the others. The Diagrams bookmark is the diagram-type switcher (BPMN, flowchart, swimlane, sequence, mind map). Storm2Flow remembers which panel you had open per process.
The left edge holds two panels that each collapse to a bookmark: All Processes (your process library) and the current process description, labelled with the process name so the bookmark tells you which document it reopens. Both can be open at the same time; collapsing both frees the canvas.
The fullscreen control (⛶) in the diagram toolbar collapses both left panels so the diagram fills the frame. Toggle it off again to restore your previous layout.
Generate multiple diagram types from the same description. Check the types you want before clicking Generate.
| Type | Best for | Editable | Format |
|---|---|---|---|
| BPMN | Formal process modeling with lanes, gateways, events | Yes - drag & drop | BPMN 2.0 XML |
| Sequence | System interactions, API flows, message exchanges | No | Mermaid |
| Flowchart New | Simple step-by-step for non-technical audiences | Yes - visual editor | Mermaid |
| Swimlane New | Cross-team handoffs with actor lanes | Yes - visual editor | Mermaid |
| Mind map New | Process overview, brainstorming, hierarchical view | Yes - visual editor | Mermaid |
Sequence diagrams include extra safeguards before they reach the canvas. Storm2Flow can decline sequence generation when the process is a poor fit for message-sequence notation, validates Mermaid syntax balance, retries once with a targeted hint when the model emits invalid DSL, and checks that named systems in the description are represented as participants.
Write your process description in the rich text editor. A small toolbar above the editor gives you bold, italic, heading, bullet list, and numbered list buttons; the editor saves the underlying markdown so what you type round-trips losslessly through Storm2Flow.
The action row below the editor has three buttons: Analyse (described below), Save (commit your current text as a restorable version, a no-op for history if nothing changed, but always confirms with a toast), and Generate.
Click Analyse to have the AI review your description for grammar, completeness, and clarity. If gaps are found, a Q&A panel appears with clarifying questions. Answer them and click Apply answers to improve the description.
Click the Record button to dictate your process. A recording modal opens with a live timer and two actions: Discard to throw the take away, or Stop & transcribe to use it. While you are recording, Analyse and Generate are blocked so you cannot act on a half-captured description by mistake. After you stop, a spinner shows the take being transcribed; the transcript stays in the language you spoke (auto-detected: English, German, Portuguese, Spanish, French) and is routed through the description review below. Requires microphone permission.
Upload a photo of a whiteboard, Miro board, hand-drawn flowchart, PDF, or .docx / .xlsx file. The AI extracts the process from the source and routes the extracted text through the content integration review below.
Click Braindump next to Upload file to paste raw notes, meeting minutes, or brainstorm output for the current process. The text is routed through the content integration review below; the raw braindump is not persisted on its own - only the accepted enriched description is saved.
Voice, file/image upload, braindump, and structural edits to a BPMN diagram all converge on the same review modal - one consistent “review the suggested description before it lands” experience:
Braindump and transcription results reveal progressively as the AI works, instead of popping in fully formed, so you can see the system is in motion. If the editor is empty when you add new content, the content becomes the first draft directly, and you still see the same review modal so you can back out.
Every saved change to a description becomes a restorable version - nothing is silently overwritten. Whether the change comes from accepting a review suggestion, editing the description directly, or generating diagrams, the prior text is preserved in version history and can be restored at any time.
Open the Comments bookmark on the right edge to discuss a process with your team. A comment can be anchored to a span of the description (select text first, then comment, and the comment quotes that span), pinned to a step (click a node on the diagram, then comment), or made about the whole process. Any comment can carry an optional Improvement tag, which marks it as an improvement idea for the process. A filter at the top of the panel switches between All, Open, Resolved, and Improvements, and comments can be resolved and reopened. The old standalone “Improve this process” notes box is retired - its job is now a whole-process comment with the Improvement tag.
Every comment row has an inline flag icon that sets a colour on the comment. Red is the one colour with a fixed meaning: red is a “Red flag”, a risk, gap, or concern you want to call out. The other colours carry no built-in meaning and are yours to use for grouping or styling threads however you like.
When you click Generate again, your open comments are placed directly on the diagram as comment annotations attached to the step they are about, never as extra boxes in the flow. Each one renders as the notation’s native comment primitive: a note or brace on Mermaid flowcharts and swimlanes, and a Text Annotation joined by a dashed line on BPMN. So a comment reads as a note beside the flow, not as another step. A flagged comment carries its colour onto the diagram where the notation allows it, so a Red flag still reads as a concern.
Where each comment lands:
Comments only reach the diagram on a Generate you trigger, the same way an edit to your description does. Adding or flagging a comment never changes your current diagram on its own, and there are no extra AI calls: the open comments simply ride along with your next Generate. This works on flowcharts, swimlanes, and BPMN.
For any leaf process (one with no children), the editor header shows + Add subprocess next to ⎇ Branch into As-is / To-be. Click it to decompose the current process into a more detailed sub-step. The subprocess hangs under the current one in your sidebar; navigating to it opens a fresh editor where you can describe and generate diagrams independently. Subprocesses are allowed inside As-is / To-be branches.
First-time users see a starter gallery in the empty editor. Pick a sample (Leave Request, Customer Onboarding, Purchase Order, Customer Support, Software Architecture, Insurance Claim, Initiative Cockpit) and Storm2Flow creates a real process with the sample description and runs the diagram generation. You land in a working editor instead of a blank canvas. The gallery hides as soon as you have your own processes.
The same catalog is always reachable from the Examples button in the header - open it any time to spin up another sample without clearing your existing processes.
When you modify your description and regenerate, the AI preserves the existing diagram structure and only changes what’s needed. This keeps your layout stable across iterations.
After generating, rate the diagram from 1 to 5 stars:
Your ratings improve future generations for your organization through few-shot learning.
Use the Wrong button when a diagram is semantically incorrect. You can add an optional reason; Storm2Flow stores that feedback with the diagram type and request ID so quality regressions can be investigated.
When your flowchart contains a decision diamond, the yes and no branches are the canonical edges leaving it. Storm2Flow now de-duplicates any unlabelled edge from the same source/target pair, so each branch renders exactly once on the canvas with the right label - no more “four arrows leaving the diamond” from a labelled and unlabelled pair stacked on top of each other.
Storm2Flow runs every AI call on AWS Bedrock, hosted in eu-central-1 (Frankfurt) with cross-region inference profiles restricted to EU regions only. No customer description, image upload, voice transcript, file extract, braindump, or generated diagram is sent to OpenAI’s SaaS endpoints, Anthropic’s SaaS endpoints, or any non-EU model host. This is what makes Storm2Flow usable by EU organisations under DSGVO/GDPR without a separate data-processing addendum per provider.
Bedrock-only as of 2026-05-18. Earlier Storm2Flow versions had the diagram cascade on Bedrock but a few side surfaces (analyse description, integrate voice / file / image / braindump content, describe-from-XML, vision extraction, BPMN edit/delta) still called Anthropic and OpenAI directly. The PLAN-BEDROCK-ONLY migration moved every last surface to Bedrock; the @anthropic-ai/sdk and openai packages are no longer in the backend dependency tree. There is no longer any code path in the product that can reach api.anthropic.com or api.openai.com.
winningRung: 2 or 3.For organisations that need every Bedrock call to land on their own AWS bill / their own CloudTrail (BYO Bedrock via cross-account role assumption), see Administration below - this is on the post-spike roadmap. The internal call path already accepts a per-request injected BedrockRuntimeClient, so the customer-facing UI is the remaining work.
+ / − / Reset buttons in the toolbar.Click XML (for BPMN) or Code (for Mermaid types) to see the raw diagram code. Click Copy to copy it to your clipboard.
When multiple diagram types are generated, tabs appear at the top of the diagram area. Click a tab to switch between types.
BPMN diagrams are fully editable in the browser:
If your edits change the process structure (not just layout), the AI suggests an updated description to keep text and diagram in sync. The suggestion opens in the same review modal as a braindump or voice capture (see Description review): you see the change summary and diff, can edit the suggestion before accepting, and accepting saves a new description version.
Flowchart, swimlane, and mind map diagrams can be edited visually in the browser:
If your edits change the process structure, the AI may suggest an updated description to keep text and diagram in sync.
Rendering: flowchart, swimlane and mind map now use the same ReactFlow + ELK renderer for view and edit mode, so the canvas looks identical whether you are just viewing or actively editing. Sequence diagrams continue to use the classic Mermaid renderer - their visual grammar doesn’t map cleanly to a graph canvas.
For swimlanes, Storm2Flow saves lane identifiers in canonical Mermaid form behind the scenes while preserving readable lane labels, so edit, save, reload, and re-edit cycles keep lane containers intact.
Every flowchart shape - rectangles, rounded rectangles, stadiums, circles, hexagons, decision diamonds - shows a + glyph on each of its four handles in edit mode. The + is the always-create affordance: drag from a + to start a new edge between two nodes. The handle area is now scoped tightly to the glyph itself, so clicking near a node corner (or on a diamond’s slanted edge) selects the node rather than accidentally starting a phantom edge.
Existing edges show small edge-update anchors at their endpoints when the edge is selected. Drag an anchor to re-route an existing edge to a different source or target - distinct from the + glyph, which always creates a new edge. Edge labels also no longer block clicks on the handle or the edge underneath them, so labelled edges are as easy to select and re-route as unlabelled ones.
Edges pick their routing style from the shape of the source node. A non-diamond parent (rectangle, rounded, stadium, circle, hexagon, etc.) uses junction routing: a plain bezier fan where every outgoing edge leaves from the same layout-default handle on the parent - arrows read left-to-right in LR layouts and top-to-bottom in TB layouts. A diamond parent uses decision routing: a custom staggered smoothstep edge that picks a distinct turn coordinate per sibling so option labels never overlap, even with five or more branches. Back-edges (targets behind the source on the primary axis) fall back to geometric handle selection in both modes so the loop-back is visually obvious.
LR and TB layouts, with the back-edge case and a mixed graph for reference.Most div-based flowchart shapes can be resized in the visual editor. Decision diamonds auto-size from their label, keep text inside the visible dark diamond, and can be manually resized while preserving the square decision shape. Circles remain fixed-size. Subgraph / container nodes (swimlane lanes and grouped flowchart sections) are also manually resizable; touched groups keep their saved dimensions across regenerations, while untouched groups continue to receive fresh automatic sizing.
Errors that need your attention stay visible as persistent panels instead of disappearing toasts. The panel explains what happened in user-friendly language, offers the right next action where possible, and includes a Report issue link when support can help.
Technical details are sanitized. You may see a request ID, error class, timestamp, and app version, but raw stack traces, provider errors, layout internals, and parser messages stay out of the user-facing page.
Every generation, every manual save, and every description change creates a new version - nothing is silently overwritten. Click the version badge (e.g. “v3 · Sep 2 · you”) to open version history.
Versions include the description, all diagram types, and creator information.
Export your diagram as a high-resolution PNG (2x retina) - ideal for embedding in documents, Slack, and email. The export includes the process name and a “struct2flow” watermark.
PDF and PowerPoint exports are temporarily paused while we improve the diagram pipeline. They will return in a future release.
A space is where a set of processes lives together. Every account has one private space (your own processes, only you can see them) and can join or create any number of shared spaces with colleagues from the same organisation.
The space switcher sits at the top-left of the header, next to the logo, showing the current space’s name and a coloured dot (grey for private, teal for shared). Click it to open a menu listing your private space and every shared space you belong to; selecting one scopes the process library on the left to that space and resets the workspace (any open process is closed so you are not looking at a stale view from another space).
From the space switcher menu, click Create shared space, type a name, and confirm. You become the space’s first owner. A new shared space starts empty - add processes by moving them in (next section).
In your private space, top-level rows in the process library show a small ⇄ button next to the row actions (only when you have at least one shared space you can write to). Click it to pick a destination from the list of shared spaces where you are an owner or contributor; on pick, the whole process - including any sub-processes - moves into that space. The row leaves your private library and now appears in the chosen space’s library for every member.
To move a process back, open the shared space, find the row, click ⇄, and pick Private space. Only the owner of a process (the account that created it) can move it; other space members cannot move someone else’s content out.
When you have a shared space open and you are its owner, click the space switcher and pick Manage members to open the members panel. The panel lists every member with their email and role:
From the panel, an owner can invite any other active member of your organisation by email (the person must already have a Storm2Flow account - we do not send invitation emails to outsiders), change a member’s role, and remove a member. A space always keeps at least one owner - the last owner cannot be demoted or removed.
The invite field autocompletes colleagues from your organisation as you type, suggesting active teammates who are not already in the space (so you do not have to remember exact addresses, and you cannot accidentally re-invite someone). When you add a member, Storm2Flow emails them an invitation letting them know you added them to the space, with a link to open the app - so they find out without you having to ping them separately.
Any member can leave a shared space via the Leave button in the members panel. On leave, the processes you contributed to that space (the ones you own and had moved in) return to your private space - nobody else inherits your work, and you keep your own content. Processes contributed by other members are unaffected and remain in the shared space.
Click Keys in the header to open account settings.
By default each user is limited to 5 generations per day. Org admins and platform admins are exempt. The limit only applies to fresh generations - viewing, editing, and exporting existing diagrams are not counted.
Click Facilitation on the diagram bottom bar to switch any flowchart, swimlane, mindmap, sequence diagram, or BPMN diagram into a warm-pastel, hand-drawn look. The same diagram, the same data, a less clinical aesthetic for workshop conversations. The toggle is per-process (your choice survives a page reload), and the button disappears when your organisation has opted out of facilitation entirely.
Storm2Flow has two tiers: Free (default for self-signup) and Pro (paid). Pro users see a small Pro pill next to their name in the header. Free users get the 5/day generation cap and cannot personalise their diagram style. Pro users get unlimited generations and the My diagram style surface (below). Tier is set per-user by an org admin via the admin members panel; org admins can additionally flip a Pro by default switch on the org info bar so every new member of that organisation joins as Pro automatically. The default-tier toggle applies to new members only - flipping it does not change existing members’ tier.
Click My diagram style in the header (Pro only) to open the personal-style modal. Override your organisation’s diagram look + theme + theme variables (background, node fill, node text, node border, edge line, edge label background, cluster accent, tertiary surface, font family) on a per-user basis. Each row shows where its current value comes from (from org if inherited, brand default if neither layer overrode it). The × next to a row drops just that override and re-inherits from the org cascade; Reset all drops every personal override at once.
GDPR-compliant account deletion is available in the same modal. This permanently deletes all your processes, diagrams, share links, and account credentials.
For organisations that need every Bedrock call to land on their own AWS bill / their own CloudTrail (procurement, vendor-of-record, or data-residency-down-to-the-account constraints), Storm2Flow plans to support cross-account IAM role assumption: customer creates a Storm2FlowBedrockInvoker role whose trust policy grants sts:AssumeRole to the Storm2Flow principal, scoped to bedrock:InvokeModel / bedrock:Converse / bedrock:ConverseStream on a customer-curated model allow-list. At generation time, Storm2Flow exchanges its identity for short-lived STS credentials in the customer’s role and issues the Bedrock call from there; credentials live in memory for the request only and are never persisted.
This option is on the post-spike roadmap; the Bedrock-only call path is already in place internally so the customer-facing UI is the remaining work. Contact me if you’d like to be among the early customers.
| Shortcut | Action | Context |
|---|---|---|
| Ctrl+Scroll | Zoom in/out | Diagram canvas |
| ← → ↑ ↓ | Pan diagram | When not typing |
| Esc | Close modal | Any modal open |
| Enter | Confirm rename | Process name input |
Organization admins and platform admins can access the Admin panel via the header button.
user, org-admin, admin.The eval suite runs on a schedule against dev every morning at 03:00 UTC, exercising a fixture matrix (flowchart + sequence) across configured Bedrock cascade rungs with ten runs per cell. Pass rates roll up by diagram type and drive CloudWatch alarms when they drop below the per-type SLA (flowchart ≥ 90%, sequence ≥ 95%).
The Admin → Evals page renders the latest report with delta vs. the previous run and failing-check chips per fixture cell; CSV export is one click. A Logs button on each row deep-links to CloudWatch for the specific invocation.
Platform admins can inspect recent generation failures through the admin debug endpoint. Failure rows include request IDs, diagram type, error class, stable input/output hashes where available, and CloudWatch deep-links scoped to the specific request. This lets support correlate a user’s error panel with backend logs without asking for a manual reproduction first.
The Diag button on every diagram view exposes per-type cascade provenance: winning rung, winning provider, prompt version, and the attempt log when the cascade had to fall through to a later rung. Provenance is now persisted with each version, so reloading the page or coming back later still shows the exact rung that produced the on-screen diagram instead of an empty Diag panel.
Next to the star rating on every diagram, use the Wrong button to mark a diagram as incorrect and optionally describe what is wrong (up to 2000 characters).
A weekly rollup aggregates those flags plus 1-star and 2-star ratings into a negative-rate metric, so quality regressions on the prompt or cascade rung surface in an alarm within seven days.
Storm2Flow works on mobile devices with a tab-based navigation:
All features work on mobile, including diagram editing, version history, and sharing.