Go to file
Stefan Mogeritsch 31eb8f083d docs: improve formatting and structure for "Chat-Verlauf" logs
- Standardized section headers in `Chat-Verlauf-Gemini_2026-04-07.md` for better clarity.
- Adjusted markdown formatting for participant labels ("Ich", "Gemini") to ensure consistent separation and readability.
- Leveraged markdown lists to enhance the readability of ÖTO § 3 guidelines and constraints.
- Resolved minor inconsistencies in indentation to ensure visual alignment across all sections.
2026-04-08 13:10:37 +02:00
_backup chore(backend): add .keep file to ensure services directory is tracked 2026-02-01 17:55:32 +01:00
.gemini docs: restructure domain documentation and update references 2026-01-15 13:44:49 +01:00
.gitea/workflows feat(devops): configure desktop packaging and introduce semantic versioning 2026-04-03 11:26:46 +02:00
.junie docs: restructure domain documentation and update references 2026-01-15 13:44:49 +01:00
backend feat(db+domain): add turniernummer and einschraenkungen fields for tournament scope and constraints 2026-04-07 15:07:25 +02:00
config docs: log session outcomes and apply enhancements across multiple components 2026-04-03 14:24:46 +02:00
contracts Upgrade dependencies and refactor: Update Gradle to 9.4.0, adjust TopBar and TurnierDetailScreen UI, and add ZNS import feature to Docker build context 2026-03-25 23:47:33 +01:00
core feat(db+domain): add turniernummer and einschraenkungen fields for tournament scope and constraints 2026-04-07 15:07:25 +02:00
docs docs: improve formatting and structure for "Chat-Verlauf" logs 2026-04-08 13:10:37 +02:00
frontend feat(tests): add QA test suites for onboarding and departmental logic validation 2026-04-03 11:46:05 +02:00
gradle Upgrade Gradle Wrapper to 9.4.1 for compatibility and stability improvements. 2026-04-04 21:02:15 +02:00
kotlin-js-store Upgrade dependencies and refactor: Update Gradle to 9.4.0, adjust TopBar and TurnierDetailScreen UI, and add ZNS import feature to Docker build context 2026-03-25 23:47:33 +01:00
META-INF feat: integrate new desktop shell and extend backend & ADRs 2026-03-24 18:22:15 +01:00
platform Implement tenant isolation for Entries Service: switch transaction handling to tenantTransaction, introduce Flyway-based migrations for tenant schemas, and add JdbcTenantRegistry with control schema support. Include migration tests, schema initializations, and E2E tenant isolation. Update configuration and roadmap with completed A-1 tasks. 2026-04-02 21:59:41 +02:00
.dockerignore build: switch to hybrid build for Kotlin/JS web-app and optimize Docker setup 2026-02-04 15:34:40 +01:00
.editorconfig Fix: Test-Commit für VCS-Integration (MP-8) (#15) 2025-11-07 12:26:33 +01:00
.env.example fix(web-app): remove unused sqlite.worker.js and wasi-dummy.js, update Config.kt and service worker logic 2026-03-16 10:14:06 +01:00
.gitignore chore: remove .env from version control for security 2026-03-10 22:23:55 +01:00
AGENTS.md docs: add Österreichische Turnierordnung 2026 (ÖTO) reference document 2026-03-16 15:05:33 +01:00
build.gradle.kts feat(devops): configure desktop packaging and introduce semantic versioning 2026-04-03 11:26:46 +02:00
CHANGELOG.md Refactor license matrix and tokenizer logic: rename LicenseTable to LizenzTable, replace LicenseMatrixService with LizenzMatrixService, enhance tokenizer with normalized and fallback token handling, improve ZNS import for license extraction, and update related documentation. 2026-04-06 23:52:06 +02:00
dc-backend.yaml Mark A-1 as complete: Update Docker Compose setup with health checks, unified depends_on conditions, and one-command startup; document changes in roadmap. 2026-04-02 18:52:48 +02:00
dc-gui.yaml Mark A-1 as complete: Update Docker Compose setup with health checks, unified depends_on conditions, and one-command startup; document changes in roadmap. 2026-04-02 18:52:48 +02:00
dc-infra.yaml Mark A-1 as complete: Update Docker Compose setup with health checks, unified depends_on conditions, and one-command startup; document changes in roadmap. 2026-04-02 18:52:48 +02:00
dc-ops.yaml docs: log session outcomes and apply enhancements across multiple components 2026-04-03 14:24:46 +02:00
docker-compose.yaml Remove commented-out desktop-app service and redefine volumes in docker-compose configuration 2026-03-05 23:50:41 +01:00
gradle.properties chore: remove deprecated horses, clubs, officials, and persons services 2026-03-28 16:51:08 +01:00
gradlew Upgrade Gradle Wrapper to 9.4.1 for compatibility and stability improvements. 2026-04-04 21:02:15 +02:00
gradlew.bat refactor(build): remove unused files and adjust JVM toolchain to Java 24 2026-01-03 15:49:09 +01:00
LICENSE Create LICENSE 2025-04-17 13:19:13 +02:00
README.md Update setup guide and README to emphasize desktop-first development. Add detailed instructions for local setup, including prerequisites (JDK 25, Gradle 9.4.0, Docker), and clarify Docker backend stack as optional. Mark Sprint C tasks C-1 and C-2 as complete. 2026-04-03 23:11:20 +02:00
settings.gradle.kts feat(verein-feature): add Vereinsverwaltung module with screens, ViewModel, and integration 2026-03-31 15:00:24 +02:00
version.properties feat(devops): configure desktop packaging and introduce semantic versioning 2026-04-03 11:26:46 +02:00

Meldestelle

DesktopFirst Meldestelle: Offlinefähige ComposeDesktopApp mit optionalem BackendStack. Domänengetrieben (DDD), Kotlin Multiplatform.

CI/CD Pipeline License: MIT


📚 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, C4Modelle, DesktopKonzept
02_Guides Setup-Anleitungen, Entwickler-Guidelines
03_Domain Fachlichkeit, Turnierregeln, Entities
07_Infrastructure Docker, Keycloak, CI/CD, Zora-Infrastruktur

Wesentliche Architektur-Referenz: OfflineFirst Desktop & Backend (Kurzkonzept)


🖥️ Primärer Fokus: DesktopApp

  • Compose Multiplatform (JVM Desktop) als primäre Zielplattform
  • OfflineFirst: Lokale SQLDelightDB, Synchronisation optional
  • MultiTenantBackend optional für Sync/Verwaltung (SchemaperTenant, vgl. ADR0021)

🏗️ Tech Stack (aktueller Stand)

Schicht Technologie
Frontend (primär) Kotlin Multiplatform (KMP), Compose Multiplatform
Backend Kotlin (Ktor/Spring Boot), Spring Cloud Gateway
Datenbank SQLDelight (lokal), PostgreSQL (Backend)
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 (lokale Entwicklung)

Empfohlen: Starte die DesktopApp direkt aus dem Repo. Der BackendStack ist optional und wird nur für Sync/Integration benötigt.

A) DesktopApp starten (ohne Backend)

Voraussetzungen: JDK 21+, aktuelle Gradle Wrapper verwendet.

# DesktopShell ausführen (Compose Desktop)
./gradlew :frontend:shells:meldestelle-desktop:run

Hinweise:

  • Beim ersten Start wird die lokale Datenbank initialisiert (OfflineFirst).
  • Architektur-Referenz: docs/06_Frontend/MVVM_UDF_Pattern.md (UDF/MVVM für ViewModels)

B) Optional: BackendStack per Docker starten

# 1. Umgebungsvariablen (nur beim ersten Mal)
cp .env.example .env || true

# 2. Infrastruktur (Postgres, Keycloak, Valkey, Consul, Zipkin)
docker compose -f docker-compose.yaml -f dc-infra.yaml up -d

# 3. BackendServices (Gateway, Masterdata, Ping, …)
docker compose -f docker-compose.yaml -f dc-backend.yaml up -d

# 4. OpsStack (Prometheus, Grafana)
docker compose -f docker-compose.yaml -f dc-ops.yaml up -d

# 5. Optional: WebShell
docker compose -f docker-compose.yaml -f dc-gui.yaml up -d

⚠️ Reihenfolge beachten: Infra muss healthy sein, bevor Backend gestartet wird. Keycloak benötigt ~6090 Sekunden.


🧭 Legacy (V1) Hinweise

  • Ältere V1Abschnitte/Anleitungen (WebFirst/MicroservicesOnly) gelten als DEPRECATED.
  • Verwende für lokale Entwicklung primär die DesktopApp (siehe Quick Start). DockerStacks sind optional für Integration/Sync.
  • In der Doku sind V1Seiten entsprechend markiert oder werden sukzessive bereinigt (siehe Roadmaps Sprint C4).

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.