Canvas, tabs & branches.
The canvas is a directed graph: nodes are analysis steps, edges pass data downstream. A few things beyond drawing that graph make a long analysis manageable — tabs and split panes, re-running only what changed, notes on your reasoning, and named branches.
Tabs and split panes
One project holds several workflows, each in its own tab in the bar above the canvas: + opens a new one, a double-click (or the pencil) renames it, and a dot next to the name marks unsaved changes. Each workflow remembers its own modality choice for the Node Library and its own AI Chat history, so switching tabs switches context rather than mixing two conversations. You cannot switch tabs while a workflow is running.
Figure Canvas tabs sit next to the workflow tabs. Drag any tab to the side of the window to split the view and watch two things at once — a spatial branch beside the scRNA branch it came from, or a figure canvas beside the workflow feeding it. The figure gallery and the clipboard are shared across canvases.
Running and stopping
- Run executes the workflow in dependency order. Select nodes first to run only those; upstream nodes they depend on are included automatically.
- Stop aborts. The node that is already running is cancelled cleanly rather than killed mid-write, so nothing is left half-computed.
- Editing a parameter, or deleting an edge, marks that node and everything downstream as stale. The next Run recomputes only the stale part and reuses the rest, which is what makes iterating on a late step cheap.
- A step that needs more memory than is free says so before it starts, in plain language, with what to change. See Memory & large data.
- Large results are stored outside the node card so the project stays light; the card still shows the verdict, thumbnail and shape.
Notes on nodes
Right-click a node → Add / edit note to attach a line of your own text: why this threshold, which sample this branch is, what you were testing. The note is part of the node, so it is saved with the project and travels inside an exported .bioflow — the easiest way to explain a workflow to whoever opens it next, including you in three months.
Branch labels
When a node feeds two or more downstream chains, each chain is a branch — two clustering resolutions, or treated versus control. Right-click any node in one and choose Label branch… to give that chain a name and a colour. The nodes in it get a coloured stripe and the name, so a forked workflow reads at a glance instead of requiring you to trace edges.
Nothing is coloured until you label it, and a node reachable from two sibling branches stays neutral because it belongs to both. The AI can label a branch for you too: “call the left branch treated and make it blue” is a valid request.
Shortcuts worth knowing
| Ctrl + C / Ctrl + V | Copy the selected nodes and paste them, wired to each other as they were. Works for a multi-selection (fixed in v0.25.0). |
| Ctrl + D | Duplicate the selection in place. |
| Ctrl + A | Select every node in the workflow. |
| Shift + drag | Box-select a region. |
| Delete / Backspace | Remove the selected nodes, or a selected edge. Inside a workspace modal the key edits the workspace, not the graph. |
| Right-click | Node actions: settings, add / edit note, label branch, copy, duplicate, delete. On empty canvas: paste, select all, Tidy Layout. |
Copy and paste apply to nodes when nodes are selected on the canvas, and to text when you are typing in a field or have highlighted text outside the canvas — so copying a parameter value out of a box still works as you expect.
Building the graph faster
- Templates and the Analysis Wizard — a whole pipeline, pre-wired, as a starting point.
- Node suggestions — with a node selected, the panel proposes what usually comes next, so you do not have to know the catalogue by heart.
- AI Copilot — describe the step in plain language and it proposes the node, wired in, as an Apply card.
- Tidy Layout — right-click empty canvas to re-flow a graph that has drifted out of shape.
Templates replace the canvas
Loading a template or a wizard result into a tab that already has nodes asks Replace Current Workflow? first. Open a new tab if you want to keep what you have.
