← All docs

Docs

Groups

The complete guide to canvas groups — creating and nesting groups, adding and removing objects, entering and navigating them, moving as one unit, locking, hiding, ungrouping, and deleting.

Groups let you bundle several canvas objects — images, sticky notes, shapes, text boxes, video and world widgets, cutouts, text-prompt widgets, and routers — into a single unit you can select, move, lock, and organize together.

When to use

Reach for a group when you want to treat a set of related objects as one thing: move a whole massing study without nudging each piece, lock a finished elevation so it can’t shift, or keep a set of references tidy inside a labeled, color-washed box. On a project heavy with images, you can also cluster the objects you aren’t working on into a group and hide it to keep the canvas fast. Groups can also nest, so you can build a shallow hierarchy (for example, a “Facade” group holding “Window” and “Door” sub-groups).

Connections (the lines between objects) can’t be grouped — they stay outside group membership and simply re-route as their endpoints move.

Select multiple objects

Before you can group anything, select at least two objects:

  1. Drag a marquee (selection box) across the canvas to lasso several objects at once, or
  2. Shift-click individual objects to add them to the selection.

You need 2 or more objects selected — grouping a single object does nothing.

Create a group

  1. Select two or more objects.
  2. Press Ctrl+G (⌘+G on Mac), or click Group Selection in the multi-select toolbar.

A new group forms around your selection. The individual selections clear, the new group becomes the sole selection, and its name field opens right away so you can type a name.

The scene/background image can also be part of a group — only one group can own it.

Name and color

Every new group is named Group N (an auto-incrementing number) and its name field opens on creation so you can rename it immediately.

  • Rename: click the group’s name label on the canvas (only interactive when the group is selected or active), or double-click the current group’s name in the toolbar breadcrumb. Press Enter or click away to save, Esc to cancel. Empty names aren’t saved, and a locked group can’t be renamed.
  • Color: each group is auto-assigned a color from a cycled 10-color palette (blue, green, amber, red, purple, pink, teal, orange, indigo, lime), so consecutive groups look distinct. The color paints as a subtle translucent wash behind the group’s members, never tinting the objects themselves.
  • Change the color: click the color swatch button in the group toolbar and pick a swatch, including None (transparent) — a no-color group falls back to a thin dashed outline so it still reads as a stack.

The group name renders as a large headline above the box. If you don’t want it dominating, use the Name size slider (the Aa button in the toolbar) to scale it between 50% and 400%.

Enter and navigate a group

Selecting a group and working inside it are two different modes.

  • Select the whole group: single-click anywhere in its box. From outside the group, clicking any member selects the whole (root) group, not the individual object.
  • Enter the group to edit its contents: double-click it (on touch, tap to select, then tap again). Its outline turns dashed green and its members become individually selectable. Entering clears any prior selection.
  • Exit one level: press Esc, click the toolbar’s Exit (door) button, or click outside the group’s bounds. Clicking outside exits straight away, whether or not something was selected. Esc is two-stage — if anything is selected, the first press clears the selection and the next one exits. The group stays selected after you exit.
  • Clicking inside the group never exits it. Click a member to select it; click empty space within the group’s bounds to deselect and stay where you are. Only a click beyond the bounds takes you up a level.

Enter and exit each move exactly one nesting level at a time.

Add a loose object to a group

There’s no “select object + Ctrl+G” that drops an object into an existing group — you add by dragging:

  1. Drag a loose object over the target group.
  2. When the object’s center point sits over the group’s box, a green dashed “drop here” highlight appears.
  3. Release. The object joins the group, and a toast confirms Added to {group name}.

Membership is decided purely by where the object’s center lands on release — there’s no overlap-percentage threshold. Notes:

  • If you hold the object’s center inside the group’s interior for about a moment mid-drag, the group auto-opens so you can drop the object precisely inside; it closes again when the drag ends.
  • Only a loose object (or a member of the group you’re currently inside) can join this way. A locked group won’t accept drops, and re-adding an existing member does nothing.

Remove an item from a group

  1. Enter the group (double-click, or the toolbar Enter button).
  2. Select the member(s) you want out.
  3. Click the Remove from group button (FolderMinus icon) in the group toolbar — its tooltip reads “Remove N item(s) from group”.

The members leave the group and stay selected: in a nested group they lift up one level into the parent; at the top level they become loose. A toast confirms Removed N item(s) from group. If removing empties the group entirely, the empty group is deleted automatically.

There’s no keyboard shortcut for removing an item, and dragging a member out onto empty canvas does not remove it — use the toolbar button.

Nested (child) groups

Groups can contain groups, up to four levels deep.

Create a child group inside a parent:

  1. Double-click into the parent to enter it.
  2. Select two or more of its members.
  3. Press Ctrl+G — the subset drops into a new child group without dissolving the parent.

Wrap existing groups in a new parent: at the top level, select two or more groups (they must share the same nesting level) — or one group plus loose objects — and press Ctrl+G. This builds a new parent around them. Note this always creates a wrapper; it never inserts the loose objects into the pre-existing group.

Navigating nesting:

  • Double-click drills in one level at a time — you can’t skip levels.
  • Esc (or the toolbar Exit button) steps out one level to the parent, not straight to root.
  • The toolbar breadcrumb shows the full path (root → … → current); click any ancestor crumb to jump directly to that level. Long chains collapse the middle to an ellipsis.
  • A Depth n/4 pill next to the breadcrumb shows how deep you are; it turns amber at the limit.

If a group action would exceed four levels, nothing is created and a warning appears: “Cannot create group: maximum nesting depth (4) reached.” Pasting groups that would over-nest are placed at root instead, with a similar notice.

Lock and hidden state are inherited from the top-level group — locking or hiding a parent applies to every descendant. Color and name size, by contrast, stay per-group.

Move a group as one unit

  • Drag: first click selects the group; a second press-and-drag on the already-selected group moves it. Every member — including nested sub-groups and the scene image, if it belongs — moves together in real time, and the group box auto-resizes to fit. Ctrl/⌘+drag clones the group in place instead of moving it.
  • Arrow-key nudge: with a group selected, press an arrow key to move it 1px, or hold Shift for 10px.
  • Mixed selection: if you’ve selected a group plus loose objects (or several groups), dragging moves them all by the same amount.

The group box always sizes itself to its members — there’s no manual resize handle. Objects joined to the group through a locked connection line also travel along with it (a separate mechanism from group locking).

A whole-group drag is a single undo step.

Lock a group

  1. Select the group.
  2. Click the padlock button in the group toolbar (tooltip Lock group / Unlock group).

A locked group can’t be moved, arrow-nudged, renamed, ungrouped, or have its members edited. It stays selectable so you can reach the toolbar and unlock it. Locking a parent locks the whole tree beneath it. (A locked group can still be deleted — the lock guards member edits, not whole-group removal.)

Hide a group

For a top-level group selected from outside, click the eye button in the toolbar to Hide / Unhide it. A hidden group’s members stop rendering, leaving a dimmed box with a crossed-eye marker; you can still select the box to unhide it.

Use it to speed up a heavy canvas. Hiding is display-only: hidden members leave the editor entirely — they don’t just dim, they stop mounting — so on a project packed with many images you can cluster the ones you’re not actively working on into a group and hide it to lighten the canvas and keep panning and zooming smooth. It’s non-destructive and temporary — the hidden objects still count for export and AI generation, and one click unhides them again.

Ungroup

Ctrl+G does double duty. To ungroup:

  1. Select exactly one group — no loose objects, no other groups also selected.
  2. Press Ctrl+G (⌘+G), or click the Ungroup button in the group toolbar.

The group dissolves one level: its members are freed and stay selected, and the group selection clears. For nested groups, child groups are promoted to the grandparent rather than fully flattened. A locked group won’t ungroup — unlock it first.

Because Ctrl+G is context-sensitive, it only ungroups when a single group is selected alone. If any loose object is selected alongside the group, Ctrl+G builds a new parent group instead.

Delete a group

Select the group and press Delete / Backspace (or the red trash button in the toolbar). This removes the group and every object inside it — it does not just release the members. A confirm dialog states the exact member count and reminds you it’s undoable with Ctrl+Z. The Delete key won’t remove a locked group — unlock it first.

How undo treats groups

Every group operation — create, ungroup, add, remove, drag, delete — commits as a single history entry. One Ctrl+Z reverses the entire operation atomically, restoring all affected members together. A drag with no movement (a plain click) records no history entry.

Quick reference

ActionTrigger
Select multiple objectsMarquee drag, or Shift-click
Create a groupCtrl+G / ⌘+G, or Group Selection button (needs 2+ objects)
Ungroup (one level)Ctrl+G / ⌘+G on a lone group, or Ungroup button
Rename a groupClick the canvas name label, or double-click the breadcrumb name
Change group colorColor swatch button in the toolbar
Enter a groupDouble-click (touch: tap, then tap again)
Exit a group (one level)Esc, toolbar Exit button, or click outside the bounds
Jump to an ancestor levelClick a breadcrumb crumb
Add a loose objectDrag it so its center lands on the group’s box (green highlight)
Remove a memberEnter group, select member, Remove from group button
Create a child groupEnter parent, select 2+ members, Ctrl+G
Wrap groups in a parentSelect 2+ groups (same level), Ctrl+G
Move a groupSelect, then press-drag the box; arrow keys nudge 1px (Shift = 10px)
Clone a groupCtrl/⌘+drag the selected group
Lock / unlockPadlock button in the toolbar
Hide / unhideEye button in the toolbar
Delete group + contentsDelete / Backspace, or trash button (with confirm)
Undo any group actionCtrl+Z (one step)