- CLAUDE.md auf Kern reduziert (Regeln, Ports, Start, Auth), lädt jede Session schlanker - claude-info.md -> docs/projektreferenz.md (Dateilandkarte, Features, Altlasten als Nachschlagewerk) - Teststand auf 38 API-Tests aktualisiert - .gitignore: next-env.d.ts ignorieren (Next.js auto-generiert) und aus Versionierung entfernt Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
40 lines
2.1 KiB
Markdown
40 lines
2.1 KiB
Markdown
# Claude Working Guidelines - Hellth Hub
|
|
|
|
Hellth Hub ist eine mobile-first Health-, Ernährungs-, Aktivitäts- und Einkaufs-Tracking-App für den Home-Lab-Betrieb. Monorepo mit `pnpm`: Next.js 16 / React 19 Frontend (`apps/admin`), Hono + tRPC + Better Auth API (`packages/api`), Drizzle/PostgreSQL (`packages/db`).
|
|
|
|
**Ausführliche Projektreferenz** (Dateilandkarte, Features, Altlasten): [`docs/projektreferenz.md`](docs/projektreferenz.md).
|
|
|
|
## Grundregeln
|
|
|
|
- Umlaute immer korrekt schreiben: echte `ä ö ü Ä Ö Ü ß` statt `ae oe ue ss`. Gilt für UI, Doku, Commits und Antworten.
|
|
- Keine alten Altprojekt-/Tenant-/Community-/Naturfreunde-Begriffe in neue UI oder Doku übernehmen.
|
|
- Einstellungen und Health-Daten sind benutzerbezogen, nicht global.
|
|
- Bestehende Architektur nutzen: `apps/admin`, `packages/api`, `packages/db`.
|
|
- Änderungen mit Tests absichern, besonders bei Auth, Health-Daten, Wochenbudget und Einkaufslisten.
|
|
- Bestehende User-Änderungen nicht zurücksetzen. Keine destruktiven Git-Befehle ohne ausdrückliche Anweisung.
|
|
- Cleanup von Altlasten nur nach ausdrücklicher Freigabe.
|
|
- Neue Formulare nach Möglichkeit mit `FormField` aus `apps/admin/app/_components/form-field.tsx` bauen.
|
|
- Bei neuen DB-Funktionen Schema, Migration, API und UI zusammen denken.
|
|
- UI mobile-first denken.
|
|
|
|
## Ports
|
|
|
|
- Admin-App lokal: `http://localhost:3001`
|
|
- API lokal: `http://localhost:3002` (Health: `/api/health` — `/` direkt liefert 404, ist normal)
|
|
- Docker-App: `http://localhost:3000` · Postgres: `localhost:5432` · pgAdmin: `http://localhost:5050`
|
|
|
|
## Lokaler Start
|
|
|
|
Docker/Postgres muss laufen (`docker ps`), dann:
|
|
|
|
```powershell
|
|
pnpm --filter @hellth/db db:migrate # Migrationen
|
|
pnpm --filter @hellth/api dev # API (Port 3002)
|
|
pnpm --filter admin dev # Admin (Port 3001)
|
|
```
|
|
|
|
Tests: `pnpm --filter admin test` · `pnpm --filter @hellth/api test`. Typecheck: `pnpm typecheck`.
|
|
|
|
## Auth/Admin
|
|
|
|
Admin-User: `admin@onl1.eu`. Admin erzwingt 2FA (mit Logs/Sicherheitsmechanik bei 2FA-Verlust). Passwörter nicht dokumentieren; bei Bedarf über Seed-/Admin-Skripte neu setzen.
|