# Dev-Setup & Live-Verifikation ## Voraussetzungen - Node ≥ 20, pnpm 10 - Eine laufende MariaDB/MySQL (lokal reicht) ## 1. Dependencies ```bash pnpm install ``` ## 2. .env konfigurieren `.env` im Repo-Root (aus `.env.example` kopieren) und die DB-Zugangsdaten setzen. **Wichtig:** eine DEDIZIERTE Test-DB nutzen, NICHT die echte QBox-DB: ```dotenv DB_HOST=127.0.0.1 DB_PORT=3306 DB_USER=root DB_PASSWORD=DEIN_MARIADB_PASSWORT DB_NAME=d4rk_mdt_dev # isolierte Test-DB — wird automatisch angelegt VITE_DEV_AUTH_BYPASS=true # Browser-Login im Dev umgehen (Mock-Officer) ``` ## 3. Test-DB anlegen + seeden ```bash pnpm db:setup:dev ``` Das Script (idempotent, non-destruktiv): 1. legt die DB `d4rk_mdt_dev` an (falls nicht vorhanden), 2. erstellt QBox-Stand-in-Tabellen `players` / `player_vehicles`, 3. spielt die `mdt_*`-Migrationen ein, 4. seedet 3 Test-Bürger, 3 Fahrzeuge, 3 Strafen. Erwartete Ausgabe endet mit: `[setup-dev] Seed abgeschlossen ✅` ## 4. Starten ```bash pnpm dev # api :3000 + web :5173 (Turborepo, parallel) ``` Browser: http://localhost:5190 ## 5. Verifizieren (Testdaten) - **Personen** → Suche `Max` oder `Erika` → Detail öffnen (Job, Lizenzen, Notizen speichern, Fahndung togglen) - **Fahrzeuge** → Kennzeichen `COP 007` oder `MAX 001` → „Als gestohlen markieren" ## Gegen die echte QBox-DB (später, produktiv) `DB_NAME` auf die echte QBox-DB zeigen und **nur** die Migrationen einspielen (erzeugt ausschließlich `mdt_*`-Tabellen, fasst QBox-Tabellen nie an): ```bash pnpm db:migrate ``` `pnpm db:setup:dev` dort NICHT ausführen (das legt QBox-Stand-in-Tabellen + Testdaten an).