# Production Checklist ## 1. Domain & Basis-URLs - [ ] Produktionsdomain festlegen: `https://[deine-domain.de]` - [ ] `NEXT_PUBLIC_SITE_URL` auf die Produktionsdomain setzen - [ ] `AUTH_URL` und `NEXTAUTH_URL` auf die Produktionsdomain setzen - [ ] Nach Deployment die WhatsApp-/LinkedIn-Vorschau mit der finalen URL testen ## 2. Datenbank - [ ] Interne `DATABASE_URL` der bestehenden Coolify-Postgres-DB kopieren - [ ] `DATABASE_URL` in der Coolify-App eintragen - [ ] Beim ersten App-Start wird das Schema automatisch mit `npx prisma db push --skip-generate` angewendet - [ ] Fuer spaetere Releases idealerweise Prisma-Migrationen einfuehren ## 3. Auth & Sicherheit - [ ] `AUTH_SECRET` neu generieren: `openssl rand -base64 32` - [ ] Keine `.env`-Dateien mit echten Secrets committen - [ ] Dashboard ist per Metadata auf `noindex,nofollow` gesetzt - [ ] Produktionsdomain auf HTTPS betreiben ## 4. Mail - [ ] Eigene Versanddomain bei Resend verifizieren - [ ] `RESEND_API_KEY` fuer Produktion setzen - [ ] `EMAIL_FROM` auf eine verifizierte Absenderadresse setzen - [ ] `ADMIN_EMAIL` fuer Kontaktformular setzen - [ ] Kontaktformular und Einladung/E-Mail-Flows einmal in Produktion testen ## 5. Uploads - [ ] Coolify-Volume `kita_planer_uploads` fuer `/app/uploads` verwenden - [ ] Sicherstellen, dass Uploads nicht aus Versehen oeffentlich ausgeliefert werden - [ ] Backup-Strategie fuer Uploads klaeren ## 6. Rechtliches - [ ] Platzhalter im Impressum ersetzen - [ ] Platzhalter in der Datenschutzerklaerung ersetzen - [ ] Hosting-Anbieter und Mail-Anbieter in Datenschutztext eintragen - [ ] Rechtliche Texte vor Livegang pruefen lassen ## 7. Build & Smoke Test - [ ] Dependencies installieren: `npm ci` - [ ] Production Build erstellen: `npm run build:prod` - [ ] App starten: `npm run start:prod` - [ ] Startseite, Login, Dashboard und Kontaktformular testen ## 8. Coolify - [ ] Code nach Gitea pushen - [ ] In Coolify eine Application aus dem Gitea-Repository anlegen - [ ] Build Pack `Docker Compose` waehlen - [ ] Compose-Datei `docker-compose.coolify.yml` verwenden - [ ] Environment Variables in Coolify eintragen, nicht ins Repo committen - [ ] Domain auf den `app`-Service und Container-Port `3000` routen - [ ] Upload-Volume `kita_planer_uploads` bleibt zwischen Deployments erhalten