- Add versions: flyway=12.4.0, kermit=2.1.0, koin=4.2.1, kotlinx-serialization=1.7.3, postgresql=42.7.10, spotless=8.4.0 - Add libraries: 5 koin-* (BOM-managed for -core/-compose/- composeViewmodel/-android), kermit, 2 ktor server-side (content-negotiation + kotlinx-json), 2 flyway (core + postgres database module), postgresql JDBC driver - Add plugins: spotless (Diffplug) + flywayPlugin - No existing version refs modified; additive only (D-09)
79 lines
4.6 KiB
TOML
79 lines
4.6 KiB
TOML
[versions]
|
|
agp = "8.11.2"
|
|
android-compileSdk = "36"
|
|
android-minSdk = "24"
|
|
android-targetSdk = "36"
|
|
androidx-activity = "1.13.0"
|
|
androidx-appcompat = "1.7.1"
|
|
androidx-core = "1.18.0"
|
|
androidx-espresso = "3.7.0"
|
|
androidx-lifecycle = "2.10.0"
|
|
androidx-testExt = "1.3.0"
|
|
composeHotReload = "1.0.0"
|
|
composeMultiplatform = "1.10.3"
|
|
flyway = "12.4.0"
|
|
junit = "4.13.2"
|
|
kermit = "2.1.0"
|
|
koin = "4.2.1"
|
|
kotlin = "2.3.20"
|
|
kotlinx-coroutines = "1.10.2"
|
|
kotlinx-serialization = "1.7.3"
|
|
ktor = "3.4.1"
|
|
logback = "1.5.32"
|
|
material3 = "1.10.0-alpha05"
|
|
postgresql = "42.7.10"
|
|
spotless = "8.4.0"
|
|
|
|
[libraries]
|
|
kotlin-test = { module = "org.jetbrains.kotlin:kotlin-test", version.ref = "kotlin" }
|
|
kotlin-testJunit = { module = "org.jetbrains.kotlin:kotlin-test-junit", version.ref = "kotlin" }
|
|
junit = { module = "junit:junit", version.ref = "junit" }
|
|
androidx-core-ktx = { module = "androidx.core:core-ktx", version.ref = "androidx-core" }
|
|
androidx-testExt-junit = { module = "androidx.test.ext:junit", version.ref = "androidx-testExt" }
|
|
androidx-espresso-core = { module = "androidx.test.espresso:espresso-core", version.ref = "androidx-espresso" }
|
|
androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "androidx-appcompat" }
|
|
androidx-activity-compose = { module = "androidx.activity:activity-compose", version.ref = "androidx-activity" }
|
|
compose-uiTooling = { module = "org.jetbrains.compose.ui:ui-tooling", version.ref = "composeMultiplatform" }
|
|
androidx-lifecycle-viewmodelCompose = { module = "org.jetbrains.androidx.lifecycle:lifecycle-viewmodel-compose", version.ref = "androidx-lifecycle" }
|
|
androidx-lifecycle-runtimeCompose = { module = "org.jetbrains.androidx.lifecycle:lifecycle-runtime-compose", version.ref = "androidx-lifecycle" }
|
|
compose-runtime = { module = "org.jetbrains.compose.runtime:runtime", version.ref = "composeMultiplatform" }
|
|
compose-foundation = { module = "org.jetbrains.compose.foundation:foundation", version.ref = "composeMultiplatform" }
|
|
compose-material3 = { module = "org.jetbrains.compose.material3:material3", version.ref = "material3" }
|
|
compose-ui = { module = "org.jetbrains.compose.ui:ui", version.ref = "composeMultiplatform" }
|
|
compose-components-resources = { module = "org.jetbrains.compose.components:components-resources", version.ref = "composeMultiplatform" }
|
|
compose-uiToolingPreview = { module = "org.jetbrains.compose.ui:ui-tooling-preview", version.ref = "composeMultiplatform" }
|
|
kotlinx-coroutinesSwing = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-swing", version.ref = "kotlinx-coroutines" }
|
|
logback = { module = "ch.qos.logback:logback-classic", version.ref = "logback" }
|
|
ktor-serverCore = { module = "io.ktor:ktor-server-core-jvm", version.ref = "ktor" }
|
|
ktor-serverNetty = { module = "io.ktor:ktor-server-netty-jvm", version.ref = "ktor" }
|
|
ktor-serverTestHost = { module = "io.ktor:ktor-server-test-host-jvm", version.ref = "ktor" }
|
|
|
|
# Koin (client DI — D-14)
|
|
koin-bom = { module = "io.insert-koin:koin-bom", version.ref = "koin" }
|
|
koin-core = { module = "io.insert-koin:koin-core" }
|
|
koin-compose = { module = "io.insert-koin:koin-compose" }
|
|
koin-composeViewmodel = { module = "io.insert-koin:koin-compose-viewmodel" }
|
|
koin-android = { module = "io.insert-koin:koin-android" }
|
|
|
|
# Kermit (client logger — D-15)
|
|
kermit = { module = "co.touchlab:kermit", version.ref = "kermit" }
|
|
|
|
# Server: Ktor content-negotiation + JSON serializer + Flyway + Postgres (D-16)
|
|
ktor-serverContentNegotiation = { module = "io.ktor:ktor-server-content-negotiation-jvm", version.ref = "ktor" }
|
|
ktor-serializationKotlinxJson = { module = "io.ktor:ktor-serialization-kotlinx-json-jvm", version.ref = "ktor" }
|
|
flyway-core = { module = "org.flywaydb:flyway-core", version.ref = "flyway" }
|
|
flyway-database-postgresql = { module = "org.flywaydb:flyway-database-postgresql", version.ref = "flyway" }
|
|
postgresql = { module = "org.postgresql:postgresql", version.ref = "postgresql" }
|
|
|
|
[plugins]
|
|
androidApplication = { id = "com.android.application", version.ref = "agp" }
|
|
androidLibrary = { id = "com.android.library", version.ref = "agp" }
|
|
composeHotReload = { id = "org.jetbrains.compose.hot-reload", version.ref = "composeHotReload" }
|
|
composeMultiplatform = { id = "org.jetbrains.compose", version.ref = "composeMultiplatform" }
|
|
composeCompiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
|
|
kotlinJvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
|
|
ktor = { id = "io.ktor.plugin", version.ref = "ktor" }
|
|
kotlinMultiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
|
|
spotless = { id = "com.diffplug.spotless", version.ref = "spotless" }
|
|
flywayPlugin = { id = "org.flywaydb.flyway", version.ref = "flyway" }
|