chore: refactor Gradle config, standardize Kotlin MPP plugin usage, and update dependencies

- Unified plugin application across modules using `alias(libs.plugins.*)` instead of hardcoded IDs.
- Removed redundant JVM/JS source map tasks, improving Gradle and Docker build consistency.
- Updated dependencies, including `logback` and Webpack `copy-webpack-plugin`, and added contextual documentation.
- Added frontend architecture diagram in PlantUML (`docs/01_Architecture/Reference`), standardizing feature-core-shell dependencies.
This commit is contained in:
2026-02-03 22:11:31 +01:00
parent c613acb91d
commit 03e1484dd3
24 changed files with 246 additions and 377 deletions
+25 -29
View File
@@ -1,41 +1,37 @@
plugins {
// Fix for "Plugin loaded multiple times": Apply plugin by ID without version (inherited from root)
id("org.jetbrains.kotlin.multiplatform")
alias(libs.plugins.kotlinSerialization)
alias(libs.plugins.kotlinMultiplatform)
alias(libs.plugins.kotlinSerialization)
}
group = "at.mocode"
version = "1.0.0"
kotlin {
// Toolchain is now handled centrally in the root build.gradle.kts
// JVM target for backend usage
jvm()
// JVM target for backend usage
jvm()
// JS target for frontend usage (Compose/Browser)
js {
browser()
}
// JS target for frontend usage (Compose/Browser)
js {
browser()
// no need for binaries.executable() in a library
// Wasm enabled by default
@OptIn(org.jetbrains.kotlin.gradle.ExperimentalWasmDsl::class)
wasmJs {
browser()
}
sourceSets {
commonMain {
dependencies {
api(projects.core.coreDomain) // Changed from implementation to api to export Syncable
implementation(libs.kotlinx.serialization.json)
}
}
// Wasm enabled by default
@OptIn(org.jetbrains.kotlin.gradle.ExperimentalWasmDsl::class)
wasmJs {
browser()
}
sourceSets {
commonMain {
dependencies {
api(projects.core.coreDomain) // Changed from implementation to api to export Syncable
implementation(libs.kotlinx.serialization.json)
}
}
commonTest {
dependencies {
implementation(libs.kotlin.test)
}
}
commonTest {
dependencies {
implementation(libs.kotlin.test)
}
}
}
}