Go to file
2025-07-19 14:19:05 +02:00
.fleet Project initialized 2025-04-17 13:06:25 +02:00
.github/workflows ci: Add initial deployment workflow for Ktor server via Docker Compose 2025-04-19 21:28:22 +02:00
api-gateway (fix) Konfiguration-Setup Umbau zu SCS 2025-07-19 14:19:05 +02:00
composeApp (fix) Umbau zu SCS 2025-07-19 11:40:22 +02:00
config (fix) Konfiguration-Setup Umbau zu SCS 2025-07-19 14:13:51 +02:00
docs (vision) SCS/DDD 2025-07-18 23:07:05 +02:00
event-management (fix) Konfiguration-Setup Umbau zu SCS 2025-07-19 14:19:05 +02:00
gradle (fix) Umbau zu SCS 2025-07-19 11:26:09 +02:00
horse-registry (fix) Konfiguration-Setup Umbau zu SCS 2025-07-19 14:13:51 +02:00
kotlin-js-store (fix) Umbau zu SCS 2025-07-19 11:26:09 +02:00
master-data (fix) Konfiguration-Setup Umbau zu SCS 2025-07-19 14:13:51 +02:00
member-management (fix) Konfiguration-Setup Umbau zu SCS 2025-07-19 14:19:05 +02:00
shared-kernel (fix) Konfiguration-Setup Umbau zu SCS 2025-07-19 14:19:05 +02:00
.editorconfig fix(compose): Change server host port mapping to 8081 to avoid local conflict 2025-04-20 16:19:17 +02:00
.gitignore fix(server): Read database config directly from environment variables 2025-04-18 22:01:20 +02:00
AUTHENTICATION_AUTHORIZATION_SUMMARY.md (vision) SCS/DDD 2025-07-18 23:07:05 +02:00
build.gradle.kts (fix) Swagger/OpenAPI-Dokumentation implementieren 2025-06-30 23:38:48 +02:00
DATABASE_SETUP_FIXES.md (fix) Datenbank-Setup Umbau zu SCS 2025-07-19 13:33:07 +02:00
database-integration-test.kt (vision) SCS/DDD 2025-07-18 23:07:05 +02:00
docker-compose.yml Datenklassen im shared-Modul 2025-05-06 16:25:00 +02:00
Dockerfile fix(server): Read database config directly from environment variables 2025-04-18 22:01:20 +02:00
fixes_implemented.md (vision) SCS/DDD 2025-07-18 23:07:05 +02:00
gradle.properties (fix) Umbau zu SCS 2025-07-19 11:26:09 +02:00
gradlew (fix) cleanup Gradle-Build 2025-06-30 11:18:53 +02:00
gradlew.bat (fix) cleanup Gradle-Build 2025-06-30 11:18:53 +02:00
issues_found.md (vision) SCS/DDD 2025-07-18 23:07:05 +02:00
LICENSE Create LICENSE 2025-04-17 13:19:13 +02:00
README_API_Implementation.md (fix) Tabellendefinitionen und Modelldefinitionen für Server-Modul 2025-06-30 19:39:40 +02:00
README_CODE_ORGANIZATION.md (fix) API Endpoints Creation for All Tables 2025-06-30 21:11:09 +02:00
README_CONFIG.md (fix) Konfiguration-Setup Umbau zu SCS 2025-07-19 14:19:05 +02:00
README_DATABASE_SETUP.md (fix) Datenbank-Setup Umbau zu SCS 2025-07-19 13:33:07 +02:00
README.md Umbau zu SCS 2025-07-17 15:17:31 +02:00
settings.gradle.kts (vision) SCS/DDD 2025-07-18 23:21:03 +02:00
test_authentication.kt (vision) SCS/DDD 2025-07-18 23:07:05 +02:00

Meldestelle - Self-Contained Systems Architecture

This is a Kotlin JVM backend project implementing a Self-Contained Systems (SCS) architecture for an equestrian sport management system.

Architecture Overview

The project follows Domain-Driven Design (DDD) principles with clearly separated bounded contexts:

Implemented Modules

  • shared-kernel - Common domain types, enums, serializers, validation utilities, and base DTOs
  • master-data - Master data management (countries, regions, age classes, venues)
  • member-management - Person and club/association management
  • horse-registry - Horse registration and management
  • api-gateway - Central API gateway aggregating all services

Module Dependencies

api-gateway
├── shared-kernel
├── master-data
├── member-management
└── horse-registry

horse-registry
├── shared-kernel
└── member-management

member-management
├── shared-kernel
└── master-data

master-data
└── shared-kernel

Technology Stack

  • Kotlin JVM - Primary programming language
  • Ktor - Web framework for REST APIs
  • Exposed - Database ORM
  • PostgreSQL - Database
  • Kotlinx Serialization - JSON serialization
  • Gradle - Build system

Getting Started

Prerequisites

  • JDK 17 or higher
  • PostgreSQL database

Building the Project

./gradlew build

Running the API Gateway

./gradlew :api-gateway:run

Documentation

See the docs/ directory for detailed architecture documentation and diagrams.