# Erste Schritte Letzte Aktualisierung: 2026-04-01 ## Ziel Diese Seite bringt neue Entwickler in unter 45 Minuten zu einem lauffähigen lokalen Setup inklusive erstem Smoke-Test. ## Voraussetzungen - Docker + Docker Compose - Git - Zugriff auf dieses Repository ## 1) Projekt lokal starten ```bash cp .env.example .env docker compose up --build -d ``` > Alle ENV-Variablen sind dokumentiert in /docs/reference-konfiguration.md. > docker compose up startet auch den globalen Scheduler-Runner (Service scheduler) im Hintergrund. Danach erreichbar: - App: `http://localhost:8080` - phpMyAdmin: `http://localhost:8081` ## 2) Login mit Seed-User (Fresh-Install) Standard-Demo-User (aus `db/init/init.sql`): - E-Mail: `demo@user.com` - Passwort: `Demo123` Wichtig: - Der Seed-User wird nur beim initialen DB-Setup angelegt. - Wenn bereits ein bestehendes Docker-Volume (`db_data`) vorhanden ist, kann der lokale Datenstand abweichen. - Für einen sauberen Fresh-Stand kannst du lokal neu initialisieren (Achtung: löscht lokale DB-Daten): ```bash docker compose down -v docker compose up --build -d ``` ## 3) Schneller Funktionscheck 1. Login funktioniert 2. Admin-Navigation ist sichtbar 3. `Admin -> Benutzer` lädt 4. `Admin -> Einstellungen` lädt 5. `Admin -> API docs` lädt (mit entsprechender Permission) ## 4) API-Schnelltest 1. In der Admin-UI einen API-Token erstellen (oder vorhandenen nutzen) 2. Beispiel-Call: ```bash curl -H "Authorization: Bearer " \ http://localhost:8080/api/v1/me ``` ## 5) Qualitätschecks ausführen ```bash docker compose exec php vendor/bin/phpunit docker compose exec php vendor/bin/phpstan analyse -c phpstan.neon --no-progress ``` Bei JS-Änderungen zusätzlich Browser-Smoke mit DevTools-Console (keine JS-Errors). ## 6) Nächste Doku-Schritte - Täglicher Workflow: `/docs/howto-lokale-entwicklung.md` - Erster kleiner Change: `/docs/howto-erste-aenderung.md` - Architekturüberblick: `/docs/explanation-architektur.md` - Sicherheitsmodell: `/docs/explanation-sicherheitsmodell.md`