Skip to content

Components – Core Module

The Core module manages the central domain entities: organisations, projects, users, participants, groups, activities, and vehicles. It follows a hexagonal architecture — the BFF calls it through an inbound service interface, and persistence is abstracted behind outbound repository interfaces.

Components

ComponentTechnologyRole
Core Service InterfaceKotlin InterfaceInbound port — exposes all domain operations to the BFF
Organisation ServiceKotlin / DomainOrganisation management and options configuration
Project ServiceKotlin / DomainProject management and options configuration
User ServiceKotlin / DomainUser and project profile management
Participant ServiceKotlin / DomainParticipant, group, and attendance date management
Activity ServiceKotlin / DomainActivity creation and scheduling
Vehicle ServiceKotlin / DomainVehicle management and scheduling
Repository InterfacesKotlin InterfaceOutbound port — persistence contracts defined by the domain
RepositoriesjOOQ / R2DBCOutbound adapter — implements repository interfaces against the core schema