# Finanz-Dashboard Persönliche Finanz-Verwaltungs-App (Single-User) mit **Vite + React + Convex**. ## Start ```bash npm install npx convex dev # Backend + .env.local (VITE_CONVEX_URL) npm run dev # Frontend (separates Terminal) # oder kombiniert: npm run dev:all ``` Erstlogin: Registrieren auf `/login` → `ensureSeeded` legt Standard-Kategorien und Einstellungen an. ## Convex Secrets ```bash npx convex env set COMDIRECT_CLIENT_ID "…" npx convex env set COMDIRECT_CLIENT_SECRET "…" npx convex env set OPENAI_API_KEY "…" npx convex env set SAVINGS_CHAT_MODEL "gpt-5.4-mini" # optional ``` Zugangsnummer und PIN werden **nur** pro Sync-Session eingegeben und nie gespeichert. `SAVINGS_CHAT_MODEL` ist optional; bei Fehlen wird `gpt-5.4-mini` → `gpt-4.1-mini` → `gpt-4.1` als Fallback genutzt. ## Funktionen - Dashboard mit KPIs, Charts, Monats-Basis (effective/booking) - KI-Analyse: neuer Bereich „Talk to Savings“ unter `/talk` - Transaktionen (paginiert, Filter, Bulk-Kategorisierung, Monatszuordnung) - Kategorien-CRUD mit Seed-Kategorien (§5 Spezifikation) - Kredite inkl. Tilgungsplan (keine Auto-Buchung als Transaktionen) - CSV-Import (comdirect, ISO-8859-1) und comdirect-API-Sync via Convex Actions - Einstellungen: Konten, ownNames, Gehalts-Folgemonat-Regel ## Tech-Stack Vite, React 18+, TypeScript, Convex, `@convex-dev/auth` (Password), Tailwind, shadcn/ui, recharts, react-router-dom, papaparse, date-fns.