refactor(model): extract dashboard model package

This commit is contained in:
vince 2026-06-20 06:26:19 +02:00
parent 22f50d64f9
commit 7a6ad8ab0e
35 changed files with 164 additions and 57 deletions

View file

@ -5,13 +5,16 @@ reusable React component library.
This project is not a Homepage customization and does not depend on Homepage
runtime, frontend code, or configuration. The dashboard will be model-driven:
the reusable UI package stays content-free, while environment-specific data
lives in validated dashboard model state inside the web app.
the reusable UI package stays content-free, the reusable dashboard model
package owns schema and validation, and environment-specific data lives in
validated dashboard model state inside the web app.
## Workspace Layout
- `apps/web`: Vite React website, Bun API server, model fixtures, Drizzle
persistence, Playwright e2e checks, and container build.
- `packages/dashboard-model`: reusable dashboard schema, validation, and
generic model fixtures shared by apps and tooling.
- `packages/ui`: reusable dashboard React components, design tokens,
shadcn/radix primitives, generic fixtures, and Storybook.
- `docs/superpowers`: migration specs and execution plans used for this repo.
@ -65,7 +68,7 @@ with an explicit migration error.
## Seed Data
The initial Dimension Lab dashboard lives in
`apps/web/src/lib/model/fixtures/dimensionlab.ts` as validated model data. It
`apps/web/src/lib/dashboard-seed/dimensionlab.ts` as validated model data. It
includes the first-screen telemetry, service groups, status strip, weather
module, Iconify icon identifiers, links, and datasource references. Values that
are not live yet are labeled as fallback values in the data so later datasource