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.
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 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.
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.
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.
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
| Criterion | A · Tabs + home | B · Switcher | C · Overview-first | D · ⌘K + peek |
|---|---|---|---|---|
| Cross-inbox glanceability | Good (Home tab) | Weak (badges only) | Best (always one key away) | OK (palette + dots) |
| Chrome added to the window | Tab strip (existing) | One avatar button | One back affordance | Near zero |
| Switch speed (known target) | 1 click / ⌘1–9 | 2 clicks / ⌘1–9 | 2 actions via overview | ⌘K + type (fastest at 5+) |
| Discoverability | High (familiar browser model) | High (Gmail-familiar) | Medium (new habit) | Low (power-user) |
| Cost in the current shell | Small (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.