[versions] accompanist = "0.32.0" agp = "8.2.1" androidx-activity = "1.8.2" androidx-core = "1.12.0" androidx-splashscreen = "1.0.1" apksig = "7.4.2" axml = "1.0.1" bouncycastle = "1.70" coil = "2.5.0" compose = "1.5.4" compose-compiler = "1.5.8" compose-tracing = "1.0.0-beta01" compose-material3 = "1.2.0-beta02" koin = "3.5.3" kotlin = "1.9.22" kotlinx-immutable = "0.3.7" kotlinx-serialization = "1.5.0" ktor = "2.3.7" navigation-reimagined = "1.3.0" # TODO: migrate to voyager zip = "2.1.0" [libraries] # Accompanist accompanist-permissions = { module = "com.google.accompanist:accompanist-permissions", version.ref = "accompanist" } accompanist-systemUiController = { module = "com.google.accompanist:accompanist-systemuicontroller", version.ref = "accompanist" } # AndroidX androidx-activity = { module = "androidx.activity:activity-compose", version.ref = "androidx-activity" } androidx-core = { module = "androidx.core:core-ktx", version.ref = "androidx-core" } androidx-splashscreen = { module = "androidx.core:core-splashscreen", version.ref = "androidx-splashscreen" } androidx-paging = "androidx.paging:paging-compose:3.3.0-alpha02" # TODO: remove paging # Compose compose-runtime = { module = "androidx.compose.runtime:runtime", version.ref = "compose" } compose-foundation = { module = "androidx.compose.foundation:foundation", version.ref = "compose" } compose-animations = { module = "androidx.compose.animation:animation-graphics", version.ref = "compose" } compose-ui = { module = "androidx.compose.ui:ui", version.ref = "compose" } compose-ui-tooling = { module = "androidx.compose.ui:ui-tooling", version.ref = "compose" } compose-material3 = { module = "androidx.compose.material3:material3", version.ref = "compose-material3" } # Compose debug tooling compose-ui-tooling-preview = { module = "androidx.compose.ui:ui-tooling-preview", version.ref = "compose" } compose-runtime-tracing = { module = "androidx.compose.runtime:runtime-tracing", version.ref = "compose-tracing" } # Koin koin-android = { module = "io.insert-koin:koin-android", version.ref = "koin" } koin-compose = { module = "io.insert-koin:koin-androidx-compose", version.ref = "koin" } # KotlinX kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinx-serialization" } kotlinx-immutable = { module = "org.jetbrains.kotlinx:kotlinx-collections-immutable", version.ref = "kotlinx-immutable" } # Ktor ktor-core = { module = "io.ktor:ktor-client-core", version.ref = "ktor" } ktor-okhttp = { module = "io.ktor:ktor-client-okhttp", version.ref = "ktor" } ktor-logging = { module = "io.ktor:ktor-client-logging", version.ref = "ktor" } ktor-content-negotiation = { module = "io.ktor:ktor-client-content-negotiation", version.ref = "ktor" } ktor-serialization-json = { module = "io.ktor:ktor-serialization-kotlinx-json", version.ref = "ktor" } # Other apksig = { module = "com.android.tools.build:apksig", version.ref = "apksig" } axml = { module = "com.aliucord:axml", version.ref = "axml" } bouncycastle = { module = "org.bouncycastle:bcpkix-jdk15on", version.ref = "bouncycastle" } coil = { module = "io.coil-kt:coil-compose", version.ref = "coil" } navigationReimagined = { module = "dev.olshevski.navigation:reimagined", version.ref = "navigation-reimagined" } zip = { module = "io.github.diamondminer88:zip-android", version.ref = "zip" } # Only use the "aar" artifact [bundles] accompanist = [ "accompanist-permissions", "accompanist-systemUiController", ] androidx = [ "androidx-core", "androidx-activity", "androidx-splashscreen", "androidx-paging", ] compose = [ "compose-runtime", "compose-ui", "compose-foundation", "compose-material3", "compose-animations", ] koin = [ "koin-android", "koin-compose", ] ktor = [ "ktor-core", "ktor-okhttp", "ktor-logging", "ktor-content-negotiation", "ktor-serialization-json", ] [plugins] android-application = { id = "com.android.application", version.ref = "agp" } kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } kotlin-parcelize = { id = "org.jetbrains.kotlin.plugin.parcelize", version.ref = "kotlin" } kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }