Skip to content

RFC-010 — DJED platform convergence in Atlas

RFC-010 — DJED platform convergence in Atlas (v0.6)

Section titled “RFC-010 — DJED platform convergence in Atlas (v0.6)”

Before v0.6, Atlas mixed bespoke shell chrome (atlas-sidebar-open localStorage, hand-rolled search field, custom phone rail) with partial adoption of @alexbayerl/djed-app-shell and almost no use of @alexbayerl/djed-workbench-shell despite an existing re-export seam.

  1. App shell — Adopt djed CommandBar (palette-first search), useShellStore (persisted djed-shell key + one-time migration from atlas-sidebar-open), MobileTabBar for phone primary nav, and ConnectionStatus for online/offline. Keep a single header DOM tree; keyboard / targets data-djed-commandbar-search.
  2. Workbench — Use WorkbenchSurface / WorkbenchCard / ContextPanel in Investigate, Case, Studio, and read-only Studio bundle, with Atlas token classes where global workbench CSS is not loaded.
  3. Settings — Persist notification preferences in Postgres (user_notification_preferences) and expose BFF routes; list plan_webhooks joined to cases for the connectors surface.
  4. Graph — Use @alexbayerl/djed-graph-surface GraphSurface on the bundle permalink so reviewers share the same read-only graph renderer as the graph explorer, without React Flow.
  5. IA — Command palette gets a “Recent” section (cases + local Investigate query strings); first-run callout on Home is gated by atlas-onboarded.
  • Keystone / Axiom / Glyph can copy the same playbook: one useShellStore, one CommandBar + CommandPalette wiring, and workbench graph surfaces for any task-dependency viewer.
  • Migrations must run before notifications API returns non-500: apply 016_user_notification_preferences.sql.
  • Rebuild @alexbayerl/djed-app-shell dist/ when extending its public API (Atlas uses file: and TypeScript dist types).

Accepted — implemented in Atlas v0.6.0.