[versions] agp = "8.4.1" kotlin = '2.0.0' ksp = '2.0.0-1.0.21' compileSdk = '34' minSdk = '21' targetSdk = '34' coroutines = '1.8.1' material = '1.12.0' core-ktx = '1.13.1' navigation = '2.7.7' appcompat = '1.6.1' constraintlayout = '2.1.4' binary-compatibility-validator = '0.14.0' dokka = '1.9.20' maven = '0.28.0' # Compose compose-bom = "2024.05.00" # https://developer.android.com/jetpack/compose/bom/bom-mapping compose-compiler = '1.5.14' # Compose integration with Activities androidx-activity = '1.9.0' # Compose integration with ViewModels androidx-lifecycle = "2.8.0" # Hilt hilt = '2.51.1' hilt-navigation-compose = '1.2.0' # Koin koin = '3.5.6' # Test junit-version = '4.13.2' kover = '0.8.0' robolectric-version = '4.12.2' espresso = "3.5.1" testRunner = "1.5.2" testRules = "1.5.0" junitKtx = "1.1.5" [libraries] # Android libraries android-material = { module = 'com.google.android.material:material', version.ref = 'material' } androidx-core-ktx = { module = 'androidx.core:core-ktx', version.ref = 'core-ktx' } androidx-appcompat = { module = 'androidx.appcompat:appcompat', version.ref = 'appcompat' } androidx-constraintlayout = { module = 'androidx.constraintlayout:constraintlayout', version.ref = 'constraintlayout' } androidx-lifecycle-viewmodel-ktx = { module = 'androidx.lifecycle:lifecycle-viewmodel-ktx', version.ref = 'androidx-lifecycle' } androidx-lifecycle-viewmodel-compose = { module = 'androidx.lifecycle:lifecycle-viewmodel-compose', version.ref = 'androidx-lifecycle' } androidx-activity-compose = { module = 'androidx.activity:activity-compose', version.ref = 'androidx-activity' } androidx-navigation-compose = { module = 'androidx.navigation:navigation-compose', version.ref = 'navigation' } compose-bom = { module = 'androidx.compose:compose-bom', version.ref = 'compose-bom' } compose-compiler = { module = 'androidx.compose.compiler:compiler', version.ref = 'compose-compiler' } compose-foundation = { module = 'androidx.compose.foundation:foundation' } compose-material = { module = 'androidx.compose.material:material' } compose-runtime = { module = 'androidx.compose.runtime:runtime' } compose-ui = { module = 'androidx.compose.ui:ui' } compose-ui-tooling = { module = 'androidx.compose.ui:ui-tooling' } compose-ui-toolingPreview = { module = 'androidx.compose.ui:ui-tooling-preview' } compose-ui-test-junit = { module = 'androidx.compose.ui:ui-test-junit4' } compose-ui-test-manifest = { module = 'androidx.compose.ui:ui-test-manifest' } coroutines-android = { module = 'org.jetbrains.kotlinx:kotlinx-coroutines-android', version.ref = 'coroutines' } kotlin-coroutines-test = { module = 'org.jetbrains.kotlinx:kotlinx-coroutines-test', version.ref = 'coroutines' } # DI libraries dagger-hilt = { module = 'com.google.dagger:hilt-android', version.ref = 'hilt' } dagger-hilt-compiler = { module = 'com.google.dagger:hilt-compiler', version.ref = 'hilt' } dagger-hilt-android-compiler = { module = 'com.google.dagger:hilt-android-compiler', version.ref = 'hilt' } dagger-hilt-android-testing = { module = 'com.google.dagger:hilt-android-testing', version.ref = 'hilt' } dagger-hilt-navigation-compose = { module = 'androidx.hilt:hilt-navigation-compose', version.ref = 'hilt-navigation-compose' } koin-android = { module = 'io.insert-koin:koin-android', version.ref = 'koin' } koin-android-test = { module = 'io.insert-koin:koin-android-test', version.ref = 'koin' } # Test libraries junit = { module = 'junit:junit', version.ref = 'junit-version' } robolectric = { module = 'org.robolectric:robolectric', version.ref = 'robolectric-version' } espresso = { module = 'androidx.test.espresso:espresso-core', version.ref = 'espresso' } test-runner = { module = 'androidx.test:runner', version.ref = 'testRunner' } test-rules = { module = 'androidx.test:rules', version.ref = 'testRules' } androidx-junit-ktx = { group = "androidx.test.ext", name = "junit-ktx", version.ref = "junitKtx" } [bundles] androidx-lifecycle-viewmodel = ["androidx-lifecycle-viewmodel-ktx", "androidx-lifecycle-viewmodel-compose"] [plugins] android-application = { id = 'com.android.application', version.ref = 'agp' } android-library = { id = 'com.android.library', version.ref = 'agp' } kotlin-android = { id = 'org.jetbrains.kotlin.android', version.ref = 'kotlin' } ksp = { id = 'com.google.devtools.ksp', version.ref = 'ksp' } dagger-hilt-android = { id = 'com.google.dagger.hilt.android', version.ref = 'hilt' } binary-compatibility-validator = { id = 'org.jetbrains.kotlinx.binary-compatibility-validator', version.ref = 'binary-compatibility-validator' } kover = { id = 'org.jetbrains.kotlinx.kover', version.ref = 'kover' } dokka = { id = 'org.jetbrains.dokka', version.ref = 'dokka' } maven = { id = 'com.vanniktech.maven.publish', version.ref = 'maven' } compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }