# Team-Setup — Assignment Monitor V2 Verteilung an Teammitglieder **nur über dieses Repo** (`AssigmentMonitorV2`). Das Produktivsystem (`c:\dev\AssigmentMonitor`, Ports 5173/4000) wird **nicht** angefasst und darf nicht verändert werden. ## Was im Starter-Paket steckt Datei: [`docs/starter/starter-structure.json`](./starter/starter-structure.json) | Enthalten | Nicht enthalten | |---|---| | Feedback-Struktur (Dimensionen, Kategorien, Kriterien) | Personen / Groups / Consultants | | Dimension-Prompts, Tagging-Prompts, Farbbänder | Assignments, Meetings, Notizen | | Assignment-Typen, Phasen, Checklisten-Definitionen | Scores, Feedback-Entwürfe, Backups mit Echtdaten | `learnedPatternHints` aus echten Protokollen werden beim Export entfernt. ## Neuinstallation per ZIP (ohne Git) 1. ZIP entpacken (z.B. nach `C:\dev\AssigmentMonitorV2`) 2. Anleitung im Paket: **`EINRICHTUNG.md`** (Kurzfassung) ```powershell cd C:\dev\AssigmentMonitorV2 copy .env.example .env npm install npm run setup npm run dev:all ``` (`npm run setup` = Starter-Struktur; alternativ `npm run bootstrap -- --yes`) Öffnen: **http://localhost:5174** ZIP erzeugen (Maintainer, nur V2): ```powershell npm run pack:zip ``` Die Datei liegt unter `dist-release/AssignmentMonitor-Team-YYYY-MM-DD.zip` (gitignored, enthält keine Dev-DB und kein `.env`). ### Laptop-Umzug (Code + komplette Datenbank) Für den eigenen Rechnerwechsel, nicht für Kollegen: ```powershell npm run pack:laptop ``` Datei: `dist-release/AssignmentMonitor-Umzug-YYYY-MM-DD.zip` — enthält die SQLite unter `server/data/` (personenbezogene Daten). Anleitung im Paket: **`UMZUG.md`**. Am Ziel **kein** `npm run setup` (sonst wird die mitgelieferte DB überschrieben). ### Assignment-Übergabe (Lead → Lead) Nicht das Team-ZIP — sondern ein einzelnes Assignment inkl. Notizen/Checklisten/Beratern: - **Export:** Assignment öffnen → **↔ Übergabe** - **Import:** Dashboard → **↔ Import** Voraussetzung: gleiche Feedback-Struktur (Starter) auf beiden Rechnern. Details: `docs/HANDOVER.md`, RPC `assignmentTransfer`. ## Neuinstallation per Git Voraussetzungen: **Node.js 25+** (wegen `node:sqlite`), Git. ```powershell git clone cd AssigmentMonitorV2 copy .env.example .env npm install npm run setup npm run dev:all ``` Öffnen: **http://localhost:5174** (nicht 5173). Optional: OpenRouter-API-Key unter **Config → KI-Prompts / Feedback**. ## Starter aktualisieren (Maintainer, nur V2) Nach Änderungen an Struktur/Typen/Checklisten/Prompts in der **eigenen V2-Dev-DB**: ```powershell cd C:\dev\AssigmentMonitorV2 npm run starter:export git add docs/starter/starter-structure.json git commit -m "Starter-Paket: Struktur aktualisiert" ``` Teammitglieder holen die Datei per `git pull` und spielen bei Bedarf neu ein: ```powershell npm run bootstrap -- --yes ``` **Achtung:** `bootstrap` löscht die lokale V2-Dev-DB-Inhalte (Meetings etc.) und ersetzt sie durch das Starter-Paket. ## Sicherheitsregeln - Nie Produktiv-Ordner, -Ports (5173/4000) oder Produktiv-SQLite verwenden — siehe [`DEV_ISOLATION.md`](./DEV_ISOLATION.md). - Starter-Skripte brechen ab bei `API_PORT=4000`, `PORT=5173` oder Dateiname `assignment-monitor.sqlite3`. - Kein Produktiv-Backup in V2 importieren, wenn ihr nur Struktur teilen wollt. ## npm-Scripts | Script | Zweck | |---|---| | `npm run starter:export` | Struktur aus V2-Dev-DB → `docs/starter/starter-structure.json` | | `npm run bootstrap -- --yes` | Starter in V2-Dev-DB einspielen (Wipe) | | `npm run setup` | Wie bootstrap + legt `.env` an falls fehlend | | `npm run pack:zip` | Versandfertiges Team-ZIP nach `dist-release/` (ohne DB) | | `npm run pack:laptop` | Laptop-Umzug: Code + komplette Dev-DB nach `dist-release/` | | `npm run db:reset` | Nur Dev-DB-Datei löschen (leere DB beim nächsten Start) | | `npm run dev:all` | Frontend :5174 + API :4001 |