Groups and Swimlanes
Groups (also called swimlanes) are visual containers for organising related nodes. They are purely cosmetic — they do not affect execution order — but they dramatically improve readability in complex workflows.
What Is a ProcessGroup?
A ProcessGroup is a named, bordered container drawn behind its member nodes. Groups are stored in workflowStore.groups and serialised with the workflow graph. They have:
- A name (label shown at the top of the group boundary)
- A colour (border and header tint)
- A position and size (auto-calculated to fit member nodes)
- A list of member node IDs
Creating a Group
Select Nodes
Select two or more nodes using Shift+Click or box select.
Group Them
Press Ctrl+G, or right-click and choose Group. A new ProcessGroup is created that wraps all selected nodes.
Name the Group
The group name field is immediately editable. Type a descriptive name (e.g., "Approval Flow", "Data Enrichment", "Error Handling").
Adding Nodes to an Existing Group
Drag a node into the group boundary. When the node hovers over the group, the group border highlights. Release to add the node to the group. The group resizes automatically to include the new member.
Moving a Group
Click and drag the group header (the top border with the group name) to move the entire group — including all member nodes — as one unit. Individual nodes can still be moved within the group by dragging them.
Deleting a Group
Right-click the group border → Delete Group. This removes the group container but keeps all member nodes on the canvas. To delete the group and all its nodes, right-click → Delete Group and Contents.
Collapsing Groups
Click the collapse icon in the group header to fold all member nodes into the group boundary. The group renders as a single compact block. This is useful for hiding completed workflow sections while working on other areas. Edges entering and leaving the collapsed group are shown as stubs.