Skip to content

T-W0HA-dashboard-layout-swap

Status: closed/done · Impact: high · Complexity: medium

Retire the dashboard’s hand-rolled layout and render on the frame’s DAppShell-based layouts/default.vue, so the dashboard gains the shared chrome — command palette, keybindings, context-menus, settings — driven by its registered modules.

LocationRole today
apps/sdlc/desktop/src-nuxt/app/layouts/default.vueHand-rolled .shell sidebar + content + scoped styles; drives nav from the static groups.
apps/sdlc/desktop/src-nuxt/nuxt.config.tsextends nothing; no app.config.ts.
packages/ts/app-frame/app/layouts/default.vueDAppShell slots (#sidebar/#navbar/#statusbar/default), useNav(), ShellPalette, useKeybindings().

sdf-nuxt extends: ['@sksizer/app-frame', '@determined/ui'], deletes its own default.vue + scoped styles, and lets the frame’s layout render. ProjectSwitcher re-homes into the DSidebar #header slot; app.config.ts supplies product (name/tagline) + deepLink.scheme (sdlc://). Transport (T-7RNJ-dashboard-transport-adapter) and modules (T-4L45-dashboard-modules) are already wired, so the frame boots with the dashboard’s data.

  1. Set sdf-nuxt extends: ['@sksizer/app-frame', '@determined/ui'] (priority: dashboard > app-frame > ui).
  2. Delete app/layouts/default.vue and its scoped styles; add app/app.config.ts with product + deepLink.scheme: 'sdlc://'.
  3. Re-home ProjectSwitcher into the DSidebar #header slot (a frame slot or a minimal layout override).
  4. Boot the dashboard; the frame’s DAppShell renders with the dashboard’s nav and tokens.
LocationKindChange
apps/sdlc/desktop/src-nuxt/nuxt.config.tsmodifyextends: [app-frame, ui]
apps/sdlc/desktop/src-nuxt/app/layouts/default.vuedeleteremove the hand-rolled layout
apps/sdlc/desktop/src-nuxt/app/app.config.tsnewproduct + deep-link scheme
  • AC-1: The dashboard renders on the frame’s DAppShell layout; the hand-rolled layout + scoped styles are gone.
  • AC-2: The dashboard shows the command palette, keybindings, and context-menu host it lacked before, driven by its modules.
  • AC-3: ProjectSwitcher still works, re-homed in the sidebar.

Depends on T-7RNJ-dashboard-transport-adapter, T-4L45-dashboard-modules.

T-7RNJ-dashboard-transport-adapter, T-4L45-dashboard-modules


← Back to Tasks