-
Notifications
You must be signed in to change notification settings - Fork 0
feat: app shell, Storybook, and CI/CD pipeline #770
Copy link
Copy link
Closed
Labels
prio:highImportant, should be prioritizedImportant, should be prioritizedscope:medium1-3 days of work1-3 days of workspec:architectureDESIGN_SPEC Section 15 - Technical ArchitectureDESIGN_SPEC Section 15 - Technical Architecturespec:human-interactionDESIGN_SPEC Section 13 - Human Interaction LayerDESIGN_SPEC Section 13 - Human Interaction Layertype:featureNew feature implementationNew feature implementationv0.5Minor version v0.5Minor version v0.5v0.5.0Patch release v0.5.0Patch release v0.5.0
Description
Phase 1.3 -- App Shell & CI/CD
Parent: #762
Context
Build the app layout shell (router, sidebar, status bar) and set up the development/testing/CI infrastructure.
Scope
App Shell
- React Router configuration with lazy-loaded routes
- Layout component (sidebar + status bar + main content area)
- Sidebar skeleton (nav items, active state, collapse behavior)
- Status bar skeleton (placeholder for real-time org stats)
- 404 / not-found page
- Auth-guarded routes (redirect to /login if unauthenticated)
Storybook
@storybook/react+ Vite builder- Tailwind integration in Storybook
- Dark theme configuration
- Accessibility addon (
@storybook/addon-a11y) - Interaction testing addon
CI/CD
- Update
dashboardCI job for React:npm run lint(ESLint with React rules)npm run type-check(tsc, not vue-tsc)npm run test(Vitest + React Testing Library, coverage)npm run build(production build)
- ESLint config (eslint-plugin-react-hooks, eslint-plugin-security)
- Vitest config with React Testing Library, jsdom, coverage
- Storybook build in CI (optional, for visual regression later)
Deliverables
- App shell renders with sidebar navigation and status bar
- All routes defined (lazy-loaded, auth-guarded)
- Storybook serves and renders stories
- CI pipeline passes (lint, type-check, test, build)
- ESLint + Vitest fully configured
Blocked by
- Phase 1.1 (project scaffold)
- Phase 1.2 (auth module for route guards)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
prio:highImportant, should be prioritizedImportant, should be prioritizedscope:medium1-3 days of work1-3 days of workspec:architectureDESIGN_SPEC Section 15 - Technical ArchitectureDESIGN_SPEC Section 15 - Technical Architecturespec:human-interactionDESIGN_SPEC Section 13 - Human Interaction LayerDESIGN_SPEC Section 13 - Human Interaction Layertype:featureNew feature implementationNew feature implementationv0.5Minor version v0.5Minor version v0.5v0.5.0Patch release v0.5.0Patch release v0.5.0