Desktop UX lab: multi-workspace navigation

Five interactive prototypes for how the Tinbox desktop app presents several workspaces to one founder — plus the report on where each one wins. All data on these pages is static and fake.

Option A
Tabs + Mission Control home

Keep the Chrome-style tab strip exactly as it is, but turn the pinned Home tab (and the new-tab page) into a founder dashboard: per-workspace cards with counts and a cross-workspace "needs you first" digest.

Lowest risk, highest immediate value — superseded by A2's refinement.

Option A2
Tabs only + merged new-tab home

Option A minus the lingering Home tab: workspaces are the only permanent tabs, and the new-tab empty state IS the homepage — dashboard, workspace launcher, and connect-a-workspace in one transient surface (Chrome-NTP style). Includes the research on surfacing important messages there.

The refined tab option. Recommended first ship.

Option B
One window + account switcher

Drop the tab strip. One workspace fills the window; a Gmail-style avatar in the top right opens an account picker with unread badges, plus ⌘1–9 to jump.

Cleanest chrome, but loses at-a-glance overview between switches.

Option C
Overview-first drill-in

Invert the paradigm: the app opens on a full-window overview (workspace panels + unified attention feed); clicking a workspace takes it full screen, ⌘0 returns to the overview.

The boldest founder-first end state. Candidate for v2 of the shell.

Option D
Invisible chrome (⌘K + peek strip)

No persistent navigation at all: a ⌘K command palette switches workspaces (with live counts), and a collapsed peek strip in the corner shows one badge dot per workspace.

Orthogonal — ship the ⌘K switcher regardless of which paradigm wins.

Where we are today

The Electron shell is a thin, Chrome-style tab strip over remote-loaded tenant deployments: one pinned Home tab (a bare account picker) plus one tab per open workspace. That architecture is a strength — the shell never version-skews against tenant workers, and every tenant keeps its branding. The UX gaps are all at the top level: Home is a utility page rather than a homepage, the new-tab action just focuses Home, and the only cross-workspace signal is the aggregate dock badge.

Constraints we hold fixed

  • Don't touch the inbox UI. The tenant SPA is already dense; the shell must not add sidebars, rails, or panels inside it for top-level navigation.
  • The shell stays thin. Workspaces are remote web apps; anything the shell renders (Home, overview, switcher) is bundled local UI fed by the IdP bootstrap plus the per-tab unread poller — data we already have.
  • Founder-overview is the job. A founder with 3–5 businesses should see "what needs me, where" in one glance, then get into that inbox in one action.
  • Scale target is 2–8 workspaces, not dozens. Paradigms that only pay off at 20 accounts are optimizing the wrong thing.

How the options compare

CriterionA · Tabs + homeB · SwitcherC · Overview-firstD · ⌘K + peek
Cross-inbox glanceabilityGood (Home tab)Weak (badges only)Best (always one key away)OK (palette + dots)
Chrome added to the windowTab strip (existing)One avatar buttonOne back affordanceNear zero
Switch speed (known target)1 click / ⌘1–92 clicks / ⌘1–92 actions via overview⌘K + type (fastest at 5+)
DiscoverabilityHigh (familiar browser model)High (Gmail-familiar)Medium (new habit)Low (power-user)
Cost in the current shellSmall (rebuild home.ts page)Medium (retire strip, keep TabManager)Medium-large (new surface + view mgmt)Small (shell-level overlay)

Recommendation

  • Ship A2 now. It solves the stated problems (homepage, new-tab page, founder overview) without changing the interaction paradigm, and every pixel of it is the bundled Home page we already own — minus the lingering Home tab that earned no place in the strip. Keeping tabs also keeps hidden affordances users already understand: drag to reorder, middle-click to close. Its "needs you first" digest starts partial (live for open workspaces, last-known for closed ones) and goes fully live with the small tenant digest endpoint described on the A2 page.
  • Add D's ⌘K switcher in the same release. It's paradigm-neutral, cheap (a shell-level overlay fed by bootstrap + unread counts), and it's the thing power users will actually use to move between inboxes.
  • Prototype C as the v2 paradigm. If founders end up living on the Mission Control page, the tab strip becomes redundant chrome — overview-first with full-window workspaces (Arc/Mission Control style) is the natural next step, and the A dashboard is a straight subset of it, so nothing shipped is thrown away.
  • Hold B as the fallback, not the direction: it has the cleanest window, but a dropdown is a worse overview than a page, and we'd be giving up glanceability to save a strip that isn't the clutter problem — the inbox is.

About these prototypes

Each option page renders a fake desktop window with the same four demo workspaces (DriveChina, Raccook, AskMRI, Tinbox HQ) and identical static threads, so only the navigation differs. The inbox itself is a simplified stand-in for the tenant SPA. The mockups are built from @tinbox/ui components and the www theme tokens, so anything that survives review can move into the Electron shell (or instance-ui) with minimal translation.