shinkan-jinkendo/frontend
Lars 278d719e84
Some checks failed
Deploy Development / deploy (push) Successful in 32s
Test Suite / lint-backend (push) Successful in 0s
Test Suite / build-frontend (push) Successful in 5s
Test Suite / playwright-tests (push) Failing after 1m54s
feat: Zielgruppen-Verwaltung (Target Groups CRUD + Admin UI)
Backend:
- GET /api/target-groups: Liste mit hierarchischem Kontext (focus_area → training_style → target_group)
- POST /api/target-groups: Create (admin only)
- PUT /api/target-groups/{id}: Update (admin only)
- DELETE /api/target-groups/{id}: Delete (superadmin only) mit CASCADE-Schutz
- Filter: by training_style_id, status

Frontend:
- api.js: listTargetGroups, createTargetGroup, updateTargetGroup, deleteTargetGroup
- AdminCatalogsPage: Neuer Tab "Zielgruppen" (6. Tab)
- Create-Form: training_style_id, name, description, min_age, max_age
- List-View: Hierarchie-Anzeige (Fokusbereich → Stil → Zielgruppe + Altersbereich)
- Inline-Editing mit Stil-Auswahl-Dropdown
- Delete mit Confirmation Dialog

Architektur:
- Hierarchische Beziehung: target_groups.training_style_id → training_styles → focus_areas
- CASCADE-Protection: DELETE verweigert wenn exercise_target_groups Einträge existieren
- Backend liefert enriched data mit training_style_name + focus_area_name

version: 0.3.2
modules: catalogs 1.2.0
pages: AdminCatalogsPage 1.1.0
2026-04-23 08:55:54 +02:00
..
src feat: Zielgruppen-Verwaltung (Target Groups CRUD + Admin UI) 2026-04-23 08:55:54 +02:00
Dockerfile fix: Add nginx SPA routing config 2026-04-21 16:30:11 +02:00
index.html feat: Complete design foundation with responsive navigation 2026-04-22 16:25:36 +02:00
nginx.conf fix: Add nginx SPA routing config 2026-04-21 16:30:11 +02:00
package.json fix: Add lucide-react dependency for navigation icons 2026-04-22 16:40:05 +02:00
vite.config.js feat: Complete MVP setup - Docker, Frontend, Migrations, CI/CD 2026-04-21 14:36:52 +02:00