feat(web): scaffold Next.js 16 dashboard with design system and auth client #82

Merged
jason.woltje merged 1 commits from feat/p3-001-web-scaffold into main 2026-03-13 13:18:10 +00:00
Owner

Summary

  • Build out @mosaic/design-tokens with Mosaic color palette, font defs, and spacing scale per AD-13
  • Scaffold apps/web with Tailwind CSS v4, BetterAuth React client, and app shell layout
  • Route groups: (dashboard) with sidebar/topbar shell, (auth) with centered card layout
  • Placeholder pages: /chat, /login, /register
  • API fetch wrapper, cn() utility with tailwind-merge, next/font self-hosted fonts
  • Dark theme default

Test plan

  • pnpm typecheck — 18/18 packages pass
  • pnpm lint — 18/18 packages pass
  • pnpm format:check — all files clean
  • pnpm --filter @mosaic/web build — Next.js builds, 5 routes generated
  • Code review remediation (7 findings, all addressed)

Closes #26

## Summary - Build out @mosaic/design-tokens with Mosaic color palette, font defs, and spacing scale per AD-13 - Scaffold apps/web with Tailwind CSS v4, BetterAuth React client, and app shell layout - Route groups: (dashboard) with sidebar/topbar shell, (auth) with centered card layout - Placeholder pages: /chat, /login, /register - API fetch wrapper, cn() utility with tailwind-merge, next/font self-hosted fonts - Dark theme default ## Test plan - [x] pnpm typecheck — 18/18 packages pass - [x] pnpm lint — 18/18 packages pass - [x] pnpm format:check — all files clean - [x] pnpm --filter @mosaic/web build — Next.js builds, 5 routes generated - [x] Code review remediation (7 findings, all addressed) Closes #26
jason.woltje added 1 commit 2026-03-13 13:17:56 +00:00
Build out apps/web with Tailwind CSS v4, BetterAuth client, and the Mosaic
design system. Populate @mosaic/design-tokens with actual color palette
(deep blue-grays, blue/purple/teal accents), font definitions (Outfit/Fira Code),
and spacing scale per AD-13.

- Tailwind v4 CSS-first config with @theme tokens in globals.css
- next/font for self-hosted Outfit + Fira Code (no Google CDN)
- App shell with sidebar nav, topbar, and content area
- Route groups: (dashboard) with AppShell, (auth) with centered card
- Placeholder pages: /chat, /login, /register
- BetterAuth React client (useSession, signIn, signUp, signOut)
- Gateway API fetch wrapper with credentials
- cn() utility with clsx + tailwind-merge
- Dark theme default, WCAG-friendly contrast

Refs #26

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
jason.woltje merged commit 780f85e0d6 into main 2026-03-13 13:18:10 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mosaicstack/stack#82