[versions] # Do not remove because despite what AS says, they're actually being used android-compileSdk = "36" android-minSdk = "26" android-targetSdk = "36" # Platform specific versions agp = "8.13.0" kotlin = "2.2.20" androidx-activity = "1.11.0" androidx-core = "1.17.0" androidx-espresso = "3.7.0" androidx-lifecycle = "2.9.4" androidx-testExt = "1.3.0" androidx-navigation = "2.9.4" androidx-security = "1.1.0" androidx-datastore = "1.1.7" kotlinx-serialization = "1.9.0" kotlinx-datetime = "0.7.1" kotlinx-coroutines = "1.10.2" compose-multiplatform-navigation = "2.9.0" compose-multiplatform = "1.9.0" # Additional Libraries koin = "4.1.1" insetsx = "0.1.0-alpha10" atomicfu = "0.29.0" markdown = "0.7.3" multiplatform-settings = "1.3.0" moko-permissions = "0.20.1" # Testing junit = "4.13.2" runner = "1.5.2" core = "1.5.0" [libraries] # Platform specific libraries androidx-core-ktx = { module = "androidx.core:core-ktx", version.ref = "androidx-core" } androidx-activity-compose = { module = "androidx.activity:activity-compose", version.ref = "androidx-activity" } 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" } androidx-compose-navigation = { module = "androidx.navigation:navigation-compose", version.ref = "androidx-navigation" } androidx-security-crypto = { module = "androidx.security:security-crypto", version.ref = "androidx-security" } androidx-datastore-preferences = { module = "androidx.datastore:datastore-preferences", version.ref = "androidx-datastore" } androidx-datastore-preferences-core = { module = "androidx.datastore:datastore-preferences-core", version.ref = "androidx-datastore" } kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinx-serialization" } kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlinx-coroutines" } kotlinx-coroutines-android = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "kotlinx-coroutines" } kotlinx-datetime = { module = "org.jetbrains.kotlinx:kotlinx-datetime", version.ref = "kotlinx-datetime"} kotlin-stdlib = { group = "org.jetbrains.kotlin", name = "kotlin-stdlib", version.ref = "kotlin" } compose-multiplatform-navigation = { module = "org.jetbrains.androidx.navigation:navigation-compose", version.ref = "compose-multiplatform-navigation" } # Koin - Dependency Injection koin-core = { module = "io.insert-koin:koin-core", version.ref = "koin" } koin-android = { module = "io.insert-koin:koin-android", version.ref = "koin" } koin-compose = { module = "io.insert-koin:koin-compose", version.ref = "koin" } koin-compose-viewmodel = { module = "io.insert-koin:koin-compose-viewmodel", version.ref = "koin" } koin-compose-viewmodel-navigation = { module = "io.insert-koin:koin-compose-viewmodel-navigation", version.ref = "koin" } koin-test = { module = "io.insert-koin:koin-test", version.ref = "koin" } # MOKO moko-permissions = { module = "dev.icerock.moko:permissions", version.ref = "moko-permissions"} moko-permissions-compose = { module = "dev.icerock.moko:permissions-compose", version.ref = "moko-permissions"} moko-permissions-bluetooth = { module = "dev.icerock.moko:permissions-bluetooth", version.ref = "moko-permissions"} moko-permissions-camera = { module = "dev.icerock.moko:permissions-camera", version.ref = "moko-permissions"} moko-permissions-contacts = { module = "dev.icerock.moko:permissions-contacts", version.ref = "moko-permissions"} moko-permissions-gallery = { module = "dev.icerock.moko:permissions-gallery", version.ref = "moko-permissions"} moko-permissions-location = { module = "dev.icerock.moko:permissions-location", version.ref = "moko-permissions"} moko-permissions-microphone = { module = "dev.icerock.moko:permissions-microphone", version.ref = "moko-permissions"} moko-permissions-motion = { module = "dev.icerock.moko:permissions-motion", version.ref = "moko-permissions"} moko-permissions-notifications = { module = "dev.icerock.moko:permissions-notifications", version.ref = "moko-permissions"} moko-permissions-storage = { module = "dev.icerock.moko:permissions-storage", version.ref = "moko-permissions"} # Multiplatform-settings multiplatform-settings-core = { module = "com.russhwolf:multiplatform-settings", version.ref = "multiplatform-settings" } multiplatform-settings-noarg = { module = "com.russhwolf:multiplatform-settings-no-arg", version.ref = "multiplatform-settings" } multiplatform-settings-coroutines = { module = "com.russhwolf:multiplatform-settings-coroutines", version.ref = "multiplatform-settings" } multiplatform-settings-serialization = { module = "com.russhwolf:multiplatform-settings-serialization", version.ref = "multiplatform-settings" } # Others insetsx = { module = "com.moriatsushi.insetsx:insetsx", version.ref = "insetsx" } atomicfu = { module = "org.jetbrains.kotlinx:atomicfu", version.ref = "atomicfu" } markdown = { module = "org.jetbrains:markdown", version.ref = "markdown"} # Test libraries junit = { module = "junit:junit", version.ref = "junit" } kotlin-test = { module = "org.jetbrains.kotlin:kotlin-test", version.ref = "kotlin" } kotlin-testJunit = { module = "org.jetbrains.kotlin:kotlin-test-junit", version.ref = "kotlin" } 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-runner = { group = "androidx.test", name = "runner", version.ref = "runner" } androidx-core = { group = "androidx.test", name = "core", version.ref = "core" } [plugins] androidApplication = { id = "com.android.application", version.ref = "agp" } androidLibrary = { id = "com.android.library", version.ref = "agp" } androidMultiplatform = { id = "com.android.kotlin.multiplatform.library", version.ref = "agp" } composeMultiplatform = { id = "org.jetbrains.compose", version.ref = "compose-multiplatform" } composeCompiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" } kotlinAndroid = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } kotlinMultiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" } kotlinSerialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } # Buildlogic defined plugins -> buildlogic/convention/build.gradle.kts composeDevKit = { id = "dev.carlosmartino.plugins.composeMultiplatform", version = "unspecified" } kotlinDevKit = { id = "dev.carlosmartino.plugins.kotlinMultiplatform", version = "unspecified" }