Apps

Home

The protected per-org landing canvas — auto-created with the org, locked from rename, and the default destination of every login.

Home is what you see right after picking an org. It's the launchpad — a centered greeting, a dock of app icons, a recents column, and a team column — rendered on a canvas. Home is one of the canvas-based surfaces; the named apps in the dock (Pages, Data, Calendar, Inbox, Dial) now open as native shell surfaces with their own opinionated layouts. See Canvases and widgets → native apps vs canvases.

Every org has exactly one Home canvas, created by the handle_new_org_home_canvas trigger at org creation (and backfilled for older orgs). It's pinned to slug = 'home', is_system = true, and visibility = 'org', and the protect_system_canvas trigger blocks rename, icon, slug, type, visibility, and is_system writes — so the canvas-dropdown's Manage and Delete entries are hidden when hovering Home. The Share entry is hidden too, since visibility is locked to org-wide.

Content fields (nodes_json, edges_json, viewport, description) stay fully editable, so you can fill Home with dashboards, widgets, or notes like any other board.

Layout

The default Home (HomePreviews.jsx, variation D — "Launchpad + Minimal") shows:

  • Greeting — time-of-day-aware ("Good morning, Philip").
  • Subtitle — org name and your role badge.
  • App dock — colored Lucide icons linking to the shipping apps. The set is filtered by the canvas-app status registry, so hidden / in-progress apps don't appear in production.
  • Recents column — clickable conversation list pulled live from the conversations store. Clicking jumps to that conversation.
  • Team column — org members from org_members, with avatar initials and role badges.

Get there

  • Click the logo in the breadcrumb.
  • ⌘K → "Home".
  • Navigate directly to /:orgSlug (no app suffix lands on Home).

Customising

Home is a full canvas, so right-click → Add Widget → Calendar / Pages / Data / Tasks / Email / Dial lets you pin dashboard-style widgets onto your homepage if the dock isn't enough. The full apps moved off the canvas, but every dashboard widget — DataStatsWidget, CalendarAgendaWidget, EmailInboxWidget, DialStatsWidget, DialBucketListWidget, and the rest — stays addable.

You can't rename or relocate Home, but you can pan it, zoom it, and set your own anchor + default zoom — those are per-user (see Canvases and widgets → Per-user view state). Admins can also save their view as the team default for new users who haven't customized yet.

The live app dock

In production the dock shows only the apps with status = 'live':

  • Home
  • Pages
  • Data
  • Calendar
  • Inbox (email)
  • Dial

Apps marked in_progress (chat, agents, sms, campaigns, office, design, automations) are visible in dev but filtered out of the production sidebar, the right-click widget picker, and the toolbar widget picker. Deep-linking to a hidden app in prod redirects back to Home.

Already-placed widgets keep rendering regardless — visibility is enforced only at the picker entry points, so a canvas you built in dev doesn't lose data when the same app gets flipped to in_progress.

When to leave Home

  • Open an app → click any dock icon, or hit ⌘K and pick.
  • Resume work → click an entry in Recents.
  • Switch canvas → use the canvas dropdown in the breadcrumb (Home first, then user-created canvases alphabetically).
  • Switch orgs → use the org switcher on the left of the breadcrumb.

On this page