5e4c292f0ca3a76f5f7ba994ff447514640e06d8
BewerbAnlegenViewModel, VeranstalterViewModel, and state management for Veranstalter and Bewerb workflows. Refactor existing Composables to use ViewModels and intents. Update Turnier UI for Bewerb creation with mandatory division logic, and add documentation for MVVM patterns and guidelines. Mark A-1 and A-2 as complete in the roadmap.
Meldestelle
Modulares System für Pferdesportveranstaltungen — gebaut mit Domain-Driven Design, Kotlin Multiplatform und Microservices.
📚 Dokumentation — Single Source of Truth
Die gesamte Projektdokumentation (Architektur, Fachdomäne, Entwickler-Anleitungen) befindet sich im /docs-Verzeichnis.
Starte hier: → docs/README.md
| Bereich | Inhalt |
|---|---|
| 01_Architecture | Master Roadmap, ADRs, C4-Modelle |
| 02_Guides | Setup-Anleitungen, Entwickler-Guidelines |
| 03_Domain | Fachlichkeit, Turnierregeln, Entities |
| 07_Infrastructure | Docker, Keycloak, CI/CD, Zora-Infrastruktur |
🏗️ Tech Stack
| Schicht | Technologie |
|---|---|
| Backend | Kotlin, Spring Boot 3.x, Spring Cloud Gateway |
| Frontend | Kotlin Multiplatform (KMP), Compose Multiplatform |
| Datenbank | PostgreSQL + Exposed / JPA |
| Auth | Keycloak (OAuth2 / OIDC) |
| Cache | Valkey |
| Service Discovery | Consul |
| Tracing | Zipkin |
| CI/CD | Gitea Actions + Gitea Registry |
| Infrastruktur | Proxmox VE, Docker Compose, Pangolin Tunnel |
🚀 Quick Start (Lokal)
# 1. Umgebungsvariablen vorbereiten (nur beim ersten Mal)
cp .env.example .env
# 2. Infrastruktur starten (Postgres, Keycloak, Valkey, Consul, Zipkin)
docker compose -f docker-compose.yaml -f dc-infra.yaml up -d
# 3. Backend-Services starten (Gateway, Ping-Service)
docker compose -f docker-compose.yaml -f dc-backend.yaml up -d
# 4. Ops-Stack starten (Prometheus, Grafana)
docker compose -f docker-compose.yaml -f dc-ops.yaml up -d
# 5. Optional: Web-App starten
docker compose -f docker-compose.yaml -f dc-gui.yaml up -d
⚠️ Reihenfolge beachten: Infra muss
healthysein, bevor Backend gestartet wird. Keycloak benötigt ~60–90 Sekunden zum Hochfahren.
Wichtige lokale Ports
| Service | URL |
|---|---|
| API-Gateway | http://localhost:8081 |
| Keycloak Admin | http://localhost:8180 |
| Consul UI | http://localhost:8500 |
| Grafana | http://localhost:3000 |
| Zipkin | http://localhost:9411 |
🤝 Beitragen
Beiträge sind willkommen. Bitte lies zunächst die Entwickler-Guides unter docs/02_Guides.
📜 Lizenz
Dieses Projekt steht unter der MIT License.
Languages
Kotlin
93.9%
Dockerfile
3.2%
HTML
1.3%
Shell
0.8%
Python
0.5%
Other
0.3%