Skip to content

v0.1.40

Choose a tag to compare

@hadefication hadefication released this 26 Aug 04:22
· 11 commits to main since this release

Spaces — group related projects in the sidebar

Zetty's sidebar has always organized projects by state: Home, Pinned, Projects,
Scratch, Hibernating. Spaces add a section you define yourself — a named,
colorable, collapsible group holding whichever projects belong together.

A Space sits below Projects and behaves like the sections you already know:

  • Joining a Space clears the project's pin — a project lives in exactly one
    section, so members show no star.
  • Hibernating a member sends it to Hibernating like any other project,
    tagged with its Space's name; waking it returns it to that Space. The Space's
    header shows both counts as 3/1 (awake/dormant), and a Space with no awake members hides
    until one comes back.
  • Deleting a Space never deletes projects — they simply return to
    Pinned/Projects.
  • Collapse state, color, icon, and order all persist across quit and relaunch.

Home, scratch terminals, and clones are never members; a clone follows its source
into whatever Space that source belongs to.

Using them

Right-click a project → Move to Space ▸ (or New Space… to create one and
file the project in a single step). Right-click a Space header to rename it, edit
its color and icon, collapse it, Hibernate All / Wake All its projects,
or delete it. A Space header collapses from its chevron — the rest of the row is
a drag handle.

You can also drag: a project onto a Space header to file it, out into Projects to
ungroup it, or a Space header itself to reorder the whole group with its members
(Space headers stay within their own band — they can't be dragged above Projects).
Members keep the order you filed them in; re-picking the same Space from the menu
moves one to the bottom.

From the command line

zetty new-space "Client Acme" --color teal --icon briefcase.fill
zetty add-project ~/work/acme-api --space "Client Acme"
zetty move-to-space sipra "Side Projects"     # or --none to ungroup
zetty hibernate --space "Client Acme"          # and wake --space
zetty rename-space "Client Acme" --to "Acme"   # --to avoids quoting
zetty remove-space "Acme"                      # keeps the projects

zetty status now renders Space headers, including empty ones. add-project --space
errors on a Space that doesn't exist rather than creating one, so a typo can't
quietly produce a second near-identical Space.

Notes

Existing workspaces load unchanged — every project simply starts ungrouped. Space
names are case-insensitively unique, which is what lets the CLI address them by name.