Initial commit: LMS microservices scaffold
- Gradle multi-module: libs/{common-http,security-jwt,markdown,test-support},
services/{identity,academic,progress,gateway}, web (Thymeleaf+htmx)
- identity-service: JWT auth (RSA), accounts, students, groups, enrollment,
import from XLSX/CSV, credentials export, password reset
- academic-service: lab import from JSON/zip (markdown + YAML + variants),
levels, API
- progress-service: schema for student levels and variant assignments
- gateway: Spring Cloud Gateway, JWT validation, route propagation
- web: Server-side UI with flex/footer layout, light/dark theme toggle,
admin dashboard, groups CRUD, student portal placeholder
- docker-compose: PostgreSQL 18
- Tests: identity smoke test with Testcontainers
This commit is contained in:
31
settings.gradle.kts
Normal file
31
settings.gradle.kts
Normal file
@@ -0,0 +1,31 @@
|
||||
// Entry point of the Gradle build: declares repositories and subprojects.
|
||||
// Docs: https://docs.gradle.org/current/userguide/multi_project_builds.html
|
||||
|
||||
dependencyResolutionManagement {
|
||||
@Suppress("UnstableApiUsage")
|
||||
repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
}
|
||||
|
||||
plugins {
|
||||
// Automatically provision the JDK declared by toolchains.
|
||||
id("org.gradle.toolchains.foojay-resolver-convention") version "1.0.0"
|
||||
}
|
||||
|
||||
rootProject.name = "LMS"
|
||||
|
||||
// Shared libraries (no Spring Boot application, plain JVM/Spring libraries).
|
||||
include(":libs:common-http")
|
||||
include(":libs:security-jwt")
|
||||
include(":libs:markdown")
|
||||
include(":libs:test-support")
|
||||
|
||||
// Domain microservices.
|
||||
include(":services:identity-service")
|
||||
include(":services:academic-service")
|
||||
include(":services:progress-service")
|
||||
include(":services:gateway")
|
||||
|
||||
// Server-side web UI (BFF): Thymeleaf + htmx.
|
||||
include(":web")
|
||||
Reference in New Issue
Block a user