refactor(frontend): restructure project layout and update API schema

Relocate frontend source code from `next-app/` to `frontend/` to align with the new project structure. This includes removing the old Next.js boilerplate files and establishing a cleaner workspace.

Additionally, updates the OpenAPI specification to include support for the `immich` widget type and its corresponding configuration schema.

- Move frontend files to `frontend/`
- Delete obsolete `next-app/` directory and its configuration
- Add `immich` widget type to `openapi.yaml`
- Update `FrontendPlan.md` with dashboard refactor and UX direction
This commit is contained in:
Tomas Dvorak
2026-05-04 12:31:34 +02:00
parent b17a06fbba
commit 17a579880f
85 changed files with 9441 additions and 947 deletions
+23
View File
@@ -0,0 +1,23 @@
# Dash Frontend Claude Context
## Quick Reference
- Framework: Next.js 15 App Router (standalone output)
- Styling: Tailwind v4 + shadcn/ui + CSS custom properties for theming
- State: @tanstack/react-query (staleTime 30s)
- DnD: @dnd-kit/core + @dnd-kit/sortable
- API: openapi-fetch client generated from ../openapi/openapi.yaml
- Fonts: Geist Sans + Geist Mono (next/font/google)
## Theme System
3 themes via `data-theme` attribute on `<html>`:
- `light` — Vercel-inspired white
- `dark` — OLED black (default)
- `casaos` — Glassmorphism with backdrop-blur
## Key Paths
- `app/layout.tsx` — root layout with Providers
- `app/page.tsx` — renders DashboardPage
- `components/dashboard/dashboard-page.tsx` — main composition
- `lib/api/client.ts` — fetch wrapper for all API calls
- `lib/api/hooks.ts` — React Query hooks
- `lib/api/schema.ts` — TypeScript types (hand-written, matches OpenAPI)