[versions] activity-compose = "1.13.0" kotlinxCoroutinesReactive = "1.11.0" lettuceCoreVersion = "7.7.0.RELEASE" material3-compose = "1.11.0-alpha03" adaptiveLayout = "1.3.0-beta02" appcompat = "1.8.0" coil-compose = "3.5.0" componentsResources = "1.11.1" compose-version = "1.11.1" desugar_jdk_libs = "2.1.5" foundation = "1.11.1" fuzzykot = "1.0.0" haze = "1.7.2" java-jwt = "4.6.0" kotlin-version = "2.4.10" agp = "9.3.1" coroutines-extensions = "1.5.5" decompose-version = "3.5.0" image-loader = "1.10.0" junit = "4.13.2" lifecycleCoroutines = "2.5.0" material = "1.12.0" materialVersion = "1.14.0" media3 = "1.11.0" mockk = "1.14.11" jsoup = "1.23.1" gradle-plugin = "1.5.5" kotlinx-coroutines-core = "1.11.0" kotlinx-serialization-json = "1.11.0" ktor-plugin = "3.5.2" kxml2 = "2.4.1" logback-classic = "1.6.3" multiplatform-settings = "1.3.0" postgresql = "42.7.13" runner = "1.7.0" sqlite = "2.7.0" sqlite-driver = "2.3.2" essenty = "1.3.0" stately-common = "2.0.6" proj-target = "37" proj-compile = "37" proj-min = "29" proj-java = "21" proj-server-java = "21" datastore-preferences-core = "1.2.1" ksp-version = "2.3.7" koin-core = "4.2.2" koin-compiler = "1.1.0" kotlin-dsl-version = "5.1.2" coreKtx = "1.19.0" watchface = "1.2.1" workRuntimeKtx = "2.11.2" krpc = "0.10.3" core = "1.19.0" playServicesWearable = "20.0.1" composeBom = "2025.12.00" composeMaterial3 = "1.5.6" composeFoundation = "1.5.6" composeUiTooling = "1.5.6" wearToolingPreview = "1.0.0" coreSplashscreen = "1.2.0" tiles = "1.5.0" tilesRenderer = "1.5.0" protolayout = "1.3.0" protolayoutMaterial3 = "1.3.0" guava = "33.2.1-android" tilesTooling = "1.5.0" tilesToolingPreview = "1.5.0" watchfaceComplicationsDataSourceKtx = "1.2.1" wearInput = "1.2.0" [libraries] adaptive-layout = { module = "org.jetbrains.compose.material3.adaptive:adaptive-layout", version.ref = "adaptiveLayout" } androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" } androidx-datastore-preferences = { module = "androidx.datastore:datastore-preferences", version.ref = "datastore-preferences-core" } androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "appcompat" } androidx-datastore-preferences-core = { module = "androidx.datastore:datastore-preferences-core", version.ref = "datastore-preferences-core" } androidx-foundation-layout = { module = "androidx.compose.foundation:foundation-layout" } androidx-foundation = { module = "androidx.compose.foundation:foundation" } androidx-material = { module = "androidx.compose.material:material", version.ref = "material" } androidx-media3-ui = { module = "androidx.media3:media3-ui", version.ref = "media3" } androidx-media3-exoplayer = { module = "androidx.media3:media3-exoplayer", version.ref = "media3" } androidx-sqlite-framework = { module = "androidx.sqlite:sqlite-framework", version.ref = "sqlite" } androidx-sqlite = { module = "androidx.sqlite:sqlite", version.ref = "sqlite" } androidx-watchface = { module = "androidx.wear.watchface:watchface", version.ref = "watchface" } androidx-work-runtime-ktx = { module = "androidx.work:work-runtime-ktx", version.ref = "workRuntimeKtx" } coil-compose = { module = "io.coil-kt.coil3:coil-compose", version.ref = "coil-compose" } com-android-application-gradle-plugin = { module = "com.android.application:com.android.application.gradle.plugin", version.ref = "agp" } fuzzykot = { module = "com.github.terrakok:fuzzykot", version.ref = "fuzzykot" } haze = { module = "dev.chrisbanes.haze:haze", version.ref = "haze" } haze-materials = { module = "dev.chrisbanes.haze:haze-materials", version.ref = "haze" } java-jwt = { module = "com.auth0:java-jwt", version.ref = "java-jwt" } jdbc-driver = { module = "app.cash.sqldelight:jdbc-driver", version.ref = "sqlite-driver" } koin-annotations = { module = "io.insert-koin:koin-annotations", version.ref = "koin-core" } kotlinx-coroutines-reactive = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-reactive", version.ref = "kotlinxCoroutinesReactive" } ktor-client-js = { module = "io.ktor:ktor-client-js", version.ref = "ktor-plugin" } ktor-server-cors = { module = "io.ktor:ktor-server-cors" } ktor-server-auth-jwt = { module = "io.ktor:ktor-server-auth-jwt" } ktor-server-auth = { module = "io.ktor:ktor-server-auth" } ktor-server-netty-jvm = { module = "io.ktor:ktor-server-netty-jvm" } ktor-serialization-kotlinx-json-jvm = { module = "io.ktor:ktor-serialization-kotlinx-json-jvm" } ktor-server-content-negotiation-jvm = { module = "io.ktor:ktor-server-content-negotiation-jvm" } ktor-server-status-pages-jvm = { module = "io.ktor:ktor-server-status-pages-jvm" } ktor-server-host-common-jvm = { module = "io.ktor:ktor-server-host-common-jvm" } ktor-server-core-jvm = { module = "io.ktor:ktor-server-core-jvm" } ktor-server-websockets-jvm = { module = "io.ktor:ktor-server-websockets-jvm" } lettuce-lettuce-core = { module = "io.lettuce:lettuce-core", version.ref = "lettuceCoreVersion" } material = { module = "com.google.android.material:material", version.ref = "materialVersion" } material3-adaptive-navigation-suite = { module = "org.jetbrains.compose.material3:material3-adaptive-navigation-suite", version.ref = "material3-compose" } multiplatform-settings = { module = "com.russhwolf:multiplatform-settings", version.ref = "multiplatform-settings" } activity-compose = { module = "androidx.activity:activity-compose", version.ref = "activity-compose" } compose-gradle-plugin = { module = "org.jetbrains.compose:compose-gradle-plugin", version.ref = "compose-version" } compose-material3 = { module = "org.jetbrains.compose.material3:material3", version.ref = "material3-compose" } compose-runtime = { module = "org.jetbrains.compose.runtime:runtime", version.ref = "compose-version" } compose-components-resources = { module = "org.jetbrains.compose.components:components-resources", version.ref = "componentsResources" } compose-foundation = { module = "org.jetbrains.compose.foundation:foundation", version.ref = "foundation" } decompose = { module = "com.arkivanov.decompose:decompose", version.ref = "decompose-version" } decompose-extensions = { module = "com.arkivanov.decompose:extensions-compose", version.ref = "decompose-version" } decompose-lifecycle-coroutines = { module = "com.arkivanov.essenty:lifecycle-coroutines", version.ref = "lifecycleCoroutines" } gradle = { module = "com.android.tools.build:gradle", version.ref = "agp" } image-loader = { module = "io.github.qdsfdhvh:image-loader", version.ref = "image-loader" } junit = { module = "junit:junit", version.ref = "junit" } mockk = { module = "io.mockk:mockk", version.ref = "mockk" } jsoup = { module = "org.jsoup:jsoup", version.ref = "jsoup" } koin-android = { module = "io.insert-koin:koin-android", version.ref = "koin-core" } koin-core = { module = "io.insert-koin:koin-core", version.ref = "koin-core" } koin-test = { module = "io.insert-koin:koin-test", version.ref = "koin-core" } koin-androidx-compose = { module = "io.insert-koin:koin-androidx-compose", version.ref = "koin-core" } kotlinx-coroutines-android = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "kotlinx-coroutines-core" } kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlinx-coroutines-core" } kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinx-serialization-json" } kotlinx-serialization-core = { module = "org.jetbrains.kotlinx:kotlinx-serialization-core", version.ref = "kotlinx-serialization-json" } ktor-client-cio = { module = "io.ktor:ktor-client-cio", version.ref = "ktor-plugin" } ktor-client-core = { module = "io.ktor:ktor-client-core", version.ref = "ktor-plugin" } ktor-client-darwin = { module = "io.ktor:ktor-client-darwin", version.ref = "ktor-plugin" } ktor-client-okhttp = { module = "io.ktor:ktor-client-okhttp", version.ref = "ktor-plugin" } kxml2 = { module = "com.github.kobjects:kxml2", version.ref = "kxml2" } logback-classic = { module = "ch.qos.logback:logback-classic", version.ref = "logback-classic" } ktor-plugin = { module = "io.ktor.plugin:plugin", version.ref = "ktor-plugin" } postgresql = { module = "org.postgresql:postgresql", version.ref = "postgresql" } runner = { module = "androidx.test:runner", version.ref = "runner" } android-driver = { module = "app.cash.sqldelight:android-driver", version.ref = "sqlite-driver" } coroutines-extensions = { module = "app.cash.sqldelight:coroutines-extensions", version.ref = "sqlite-driver" } runtime-wasm-js = { module = "app.cash.sqldelight:runtime-wasm-js", version.ref = "sqlite-driver" } sql-delight-runtime = { module = "app.cash.sqldelight:runtime", version.ref = "sqlite-driver" } sql-delight-native = { module = "app.cash.sqldelight:native-driver", version.ref = "sqlite-driver" } sqlite-driver = { module = "app.cash.sqldelight:sqlite-driver", version.ref = "sqlite-driver" } sqldelight-web-driver = { module = "app.cash.sqldelight:web-worker-driver", version.ref = "sqlite-driver" } ktor-serialization-kotlinx-json = { module = "io.ktor:ktor-serialization-kotlinx-json", version.ref = "ktor-plugin" } ktor-client-content-negotiation = { module = "io.ktor:ktor-client-content-negotiation", version.ref = "ktor-plugin" } ktor-client-auth = { module = "io.ktor:ktor-client-auth", version.ref = "ktor-plugin" } ktor-client-websockets = { module = "io.ktor:ktor-client-websockets", version.ref = "ktor-plugin" } ktor-client-logging = { module = "io.ktor:ktor-client-logging", version.ref = "ktor-plugin" } ui-compose = { module = "androidx.compose.ui:ui" } ui-compose-util = { module = "androidx.compose.ui:ui-util" } ui-tooling-preview = { module = "org.jetbrains.compose.ui:ui-tooling-preview", version.ref = "compose-version" } ui-tooling = { module = "androidx.compose.ui:ui-tooling", version.ref = "compose-version" } kotlin-gradle-plugin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin-version" } web-worker-driver-wasm-js = { module = "app.cash.sqldelight:web-worker-driver-wasm-js", version.ref = "sqlite-driver" } kotlinx-rpc-krpc-ktor-client = { module = "org.jetbrains.kotlinx:kotlinx-rpc-krpc-ktor-client", version.ref = "krpc" } kotlinx-rpc-krpc-ktor-server = { module = "org.jetbrains.kotlinx:kotlinx-rpc-krpc-ktor-server", version.ref = "krpc" } kotlinx-rpc-krpc-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-rpc-krpc-serialization-json", version.ref = "krpc" } kotlinx-rpc-krpc-server = { module = "org.jetbrains.kotlinx:kotlinx-rpc-krpc-server", version.ref = "krpc" } kotlinx-rpc-krpc-client = { module = "org.jetbrains.kotlinx:kotlinx-rpc-krpc-client", version.ref = "krpc" } androidx-core = { group = "androidx.core", name = "core", version.ref = "core" } play-services-wearable = { group = "com.google.android.gms", name = "play-services-wearable", version.ref = "playServicesWearable" } androidx-compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "composeBom" } androidx-compose-ui-graphics = { group = "androidx.compose.ui", name = "ui-graphics" } androidx-compose-ui-tooling-preview = { group = "androidx.compose.ui", name = "ui-tooling-preview" } androidx-compose-ui-test-manifest = { group = "androidx.compose.ui", name = "ui-test-manifest" } androidx-compose-ui-test-junit4 = { group = "androidx.compose.ui", name = "ui-test-junit4" } androidx-compose-material3 = { group = "androidx.wear.compose", name = "compose-material3", version.ref = "composeMaterial3" } androidx-compose-foundation = { group = "androidx.wear.compose", name = "compose-foundation", version.ref = "composeFoundation" } androidx-compose-ui-tooling = { group = "androidx.wear.compose", name = "compose-ui-tooling", version.ref = "composeUiTooling" } androidx-wear-tooling-preview = { group = "androidx.wear", name = "wear-tooling-preview", version.ref = "wearToolingPreview" } androidx-core-splashscreen = { group = "androidx.core", name = "core-splashscreen", version.ref = "coreSplashscreen" } androidx-tiles = { group = "androidx.wear.tiles", name = "tiles", version.ref = "tiles" } androidx-tiles-renderer = { group = "androidx.wear.tiles", name = "tiles-renderer", version.ref = "tilesRenderer" } androidx-protolayout = { group = "androidx.wear.protolayout", name = "protolayout", version.ref = "protolayout" } androidx-protolayout-material3 = { group = "androidx.wear.protolayout", name = "protolayout-material3", version.ref = "protolayoutMaterial3" } guava = { group = "com.google.guava", name = "guava", version.ref = "guava" } androidx-tiles-tooling = { group = "androidx.wear.tiles", name = "tiles-tooling", version.ref = "tilesTooling" } androidx-tiles-tooling-preview = { group = "androidx.wear.tiles", name = "tiles-tooling-preview", version.ref = "tilesToolingPreview" } androidx-watchface-complications-data-source-ktx = { group = "androidx.wear.watchface", name = "watchface-complications-data-source-ktx", version.ref = "watchfaceComplicationsDataSourceKtx" } androidx-wear-input = { group = "androidx.wear", name = "wear-input", version.ref = "wearInput" } [plugins] jetbrains-compose = { id = "org.jetbrains.compose", version.ref = "compose-version" } kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin-version" } compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin-version" } sqldelight = { id = "app.cash.sqldelight", version.ref = "sqlite-driver" } serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin-version" } android-application = { id = "com.android.application", version.ref = "agp" } android-library = { id = "com.android.library", version.ref = "agp" } multiplatform-android-library = { id = "com.android.kotlin.multiplatform.library", version.ref = "agp" } ktor = { id = "io.ktor.plugin", version.ref = "ktor-plugin" } java-library = { id = "java-library", version = "unspecified" } devtools-ksp = { id = "com.google.devtools.ksp", version.ref = "ksp-version" } jetbrains-kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin-version" } kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin-version" } krpc = { id = "org.jetbrains.kotlinx.rpc.plugin", version.ref = "krpc" } koin-compiler = { id = "io.insert-koin.compiler.plugin", version.ref = "koin-compiler" } convention-jvm = { id = "convention.jvm", version = "unspecified" } convention-kmp = { id = "convention.kmp", version = "unspecified" } convention-ktor-client = { id = "convention.ktor-client", version = "unspecified" } convention-compose = { id = "convention.compose", version = "unspecified" } convention-serialization = { id = "convention.serialization", version = "unspecified" } convention-android-lib = { id = "convention.android-lib", version = "unspecified" } convention-sqldelight = { id = "convention.sqldelight", version = "unspecified" } convention-koin = { id = "convention.koin", version = "unspecified" } convention-krpc-client = { id = "convention.krpc-client", version = "unspecified" } convention-krpc-server = { id = "convention.krpc-server", version = "unspecified" } convention-android-app = { id = "convention.android-app", version = "unspecified" } convention-web-app = { id = "convention.web-app", version = "unspecified" } convention-backend-app = { id = "convention.backend-app", version = "unspecified" }