Flowchart
A React component in Beamline's AI & agents category.
A workflow as steps on a dotted canvas: a trigger, conditions that branch into paths side by side, actions and waits, read top to bottom; during a run each step shows its status, and the whole flow is one keyboard stop walked with the arrows.
Use it for
- Showing or reviewing an automation an agent will run: trigger, conditions, actions.
- Following a workflow run step by step, including where it stopped.
Not for
- A linear list of steps with live status (plan, or task-rows for background jobs).
- Free-form diagrams or graph editing (a canvas library).
- Progress through a form (stepper).
Anatomy
- frame and dotted canvas (scrolls inside its own frame)
- step node: kind tile and word (Trigger, If / else, Action, Wait), meta, status glyph and word, title, description
- conditions well: If / and rows, field, operator, value (menu when editable)
- connector with arrow
- branch fork: a pill per path (Yes / No) and its steps side by side
- empty state
Variants
- kind: trigger, condition, action, wait
States
- definition (no status)
- selected step (accent ring)
- run: done, running, not run, skipped, failed (outlined, says why)
- empty
Keyboard
- The flow is one Tab stop (roving tabindex; the selected step first)
- ↓ next step (into the first path after a condition), ↑ previous (out of a path to its condition)
- ← → the same place in the neighbouring path (mirrored in RTL)
- Home / End first and last step
- Enter or Space selects the step and calls onStepActivate
- Condition values are buttons that open a menu
Motion
Hover lifts a node's shadow at once and settles over --motion-out; no other motion.
Props
| Prop | Type | Default | Description |
|---|---|---|---|
steps (required) | FlowStep[] | — | { id, kind, title, description?, icon?, meta?, conditions?, branches?: { id, label, steps }[], status? } |
selected / defaultSelected / onSelectedChange | string | null | — | |
onStepActivate | (step) => void | — | |
onConditionChange | (stepId, conditionId, value) => void | — | With a condition's options, its value opens a menu. |
label / emptyLabel / height | string / ReactNode / number | string | — | |
style / ref | CSSProperties / native Ref | — | |
classNames | FlowchartClassNames | — |
Built from
- dropdown-menu
- button
- spinner
- empty-state
Dependencies
lucide-react, radix-ui
Import
import { Flowchart } from "@/components/flowchart/flowchart";
Get it
Flowchart is part of Beamline: 190 React components and screens your coding agent (Claude Code, Codex, Cursor or any MCP client) installs into your app through Beamline's MCP server, as a ready-built package or as plain React source you can change. $49 one payment (regular $200), no subscription, a year of updates, one licence for your whole team. Get Beamline · Connect your agent
More in AI & agents
- Approval card: The agent stops and asks before it acts: what it wants to do, exactly what that changes, any choices it needs, and Approve or Reject; both run your…
- Attachment: A file tile: preview or typed glyph with the type named, name, size, upload progress, error with retry, and a keyboard-reachable remove.
- Chat thread: People talking to people: messages grouped by person and day, reactions, delivery and read receipts that glide to the newest message read, who is typing…
- Citations: Inline numbered citations that preview their source on hover or focus, plus a numbered source list; streamed answers flow in at an even pace with the…
- Context cards: The knowledge an agent retrieved before it answered: one card per chunk with what it is about, the text it read with the search words marked, how…
- Conversation: The scrolling column of a conversation: follows new content while you are at the bottom, stops when you scroll up to read, and offers a way back; shared…
- Image generation: The frame an AI image is generated into: a field of brand-hued pixels breathes with the progress while the model works, then the image arrives —…
- Message: One turn in a conversation with an agent: the person's words in a quiet bubble, the agent's answer on the page with its orb mark, trace, tool calls and…
- Plan: An agent's plan: numbered steps with live status, progress, and Approve / Edit / Reject when it needs sign-off; approving shows progress, and a refusal…
- Prompt bar: The agent composer: a field that grows, @ to add a source, / for a command, a model picker, files and dictation, and one button that sends with progress…
- Reasoning: The agent's trace, fed by your stream: a shimmering label and the seconds so far while it works, then "Thought for N seconds"; steps that check off…
- Recommendation card: One suggestion from the agent that the person may take or leave: what it suggests, why, the expected effect and how sure it is (a meter and a word…
- Response: An assistant's answer as streamed markdown in the system's reading type: bursty tokens flow in at an even pace, each new word fades in through a short…
- Selection actions: Select a passage and hand it to the agent: a bar over the selection with quick actions, your own instruction and More; while the agent works it says so…
- Task rows: Background work an agent is doing, one row per task: status as a glyph and a word, what it produced, how long it has run or took, a progress bar while…
- Tool call: One tool call in an agent's run: status, what it did and a short result on one quiet row that opens to the exact input and output; stops for permission…