Files
coco 723ce1af5c a
2026-07-03 15:12:48 +08:00

178 lines
9.6 KiB
TOML

[versions]
kotlin = "1.8.21"
kotlin-compilerVersion = "1.4.7"
plugin-agp = "8.1.1"
hilt = "2.47"
hilt-androidx = "1.0.0"
ksp = "1.8.21-1.0.11"
kotlinx-coroutines-core = "1.7.3"
kotlinx-coroutines-playServices = "1.6.4"
kotlinx-serialization-json = "1.5.1"
testing-mockito-kotlin = "5.0.0"
androidx-navigation-ui-ktx = "2.6.0"
androidx-navigation-fragment-ktx = "2.6.0"
androidx-preference-ktx = "1.2.0"
androidx-core-ktx = "1.10.1"
androidx-activity-ktx = "1.7.2"
androidx-fragment-ktx = "1.6.1"
androidx-material = "1.9.0"
androidx-runtime-livedata = "1.4.3"
androidx-documentfile = "1.0.1"
androidx-media = "1.6.0"
androidx-lifecycle = "2.6.1"
androidx-workmanager = "2.8.1"
androidx-startup = "1.1.1"
androidx-constraintLayout = "2.1.4"
androidx-coordinatorLayout = "1.2.0"
androidx-appcompat = "1.6.1"
androidx-testing-core = "1.5.0"
androidx-testing-runner = "1.5.2"
androidx-testing-rules = "1.5.0"
androidx-testing-orchestrator = "1.4.2"
androidx-testing-junit = "1.1.5"
androidx-testing-espresso = "3.5.1"
compose-coil = "2.4.0"
compose-accompanist = "0.30.1"
compose-constraintlayout = "1.0.1"
compose-animation = "1.4.3"
compose-activity = "1.7.2"
compose-lazyColumnScrollbar = "1.6.3"
compose-landscapist-glide = "2.2.5"
compose-testing-ui = "1.4.3"
compose-material-icons-extended = "1.4.3"
compose-material3 = "1.1.1"
crux = "5.0"
gson = "2.10.1"
jsoup = "1.16.1"
translate = "17.0.1"
moshi = "1.15.0"
room = "2.5.2"
junit = "4.13.2"
okhttp = "5.0.0-alpha.11"
okhttp-interceptor-logging = "5.0.0-alpha.11"
okhttp-glideIntegration = "4.15.1"
readability4j = "1.0.8"
retrofit = "2.9.0"
timber = "5.0.1"
[libraries]
# Compose
compose-accompanist-pager-indicators = { module = "com.google.accompanist:accompanist-pager-indicators", version.ref = "compose-accompanist" }
compose-accompanist-pager = { module = "com.google.accompanist:accompanist-pager", version.ref = "compose-accompanist" }
compose-accompanist-insets = { module = "com.google.accompanist:accompanist-insets", version.ref = "compose-accompanist" }
compose-accompanist-swiperefresh = { module = "com.google.accompanist:accompanist-swiperefresh", version.ref = "compose-accompanist" }
compose-accompanist-systemuicontroller = { module = "com.google.accompanist:accompanist-systemuicontroller", version.ref = "compose-accompanist" }
compose-androidx-constraintlayout = { module = "androidx.constraintlayout:constraintlayout-compose", version.ref = "compose-constraintlayout" }
compose-androidx-animation = { module = "androidx.compose.animation:animation", version.ref = "compose-animation" }
compose-androidx-activity = { module = "androidx.activity:activity-compose", version.ref = "compose-activity" }
compose-androidx-lifecycle-viewmodel = { module = "androidx.lifecycle:lifecycle-viewmodel-compose", version.ref = "androidx-lifecycle" }
compose-androidx-material-icons-extended = { module = "androidx.compose.material:material-icons-extended", version.ref = "compose-material-icons-extended" }
compose-androidx-runtime-livedata = { module = "androidx.compose.runtime:runtime-livedata", version.ref = "androidx-runtime-livedata" }
compose-androidx-ui-test-junit4 = { module = "androidx.compose.ui:ui-test-junit4", version.ref = "compose-testing-ui" }
compose-androidx-ui-tooling = { module = "androidx.compose.ui:ui-tooling", version.ref = "compose-testing-ui" }
compose-androidx-material3 = { module = "androidx.compose.material3:material3", version.ref = "compose-material3" }
compose-lazyColumnScrollbar = { module = "com.github.nanihadesuka:LazyColumnScrollbar", version.ref = "compose-lazyColumnScrollbar" }
compose-coil = { module = "io.coil-kt:coil-compose", version.ref = "compose-coil" }
compose-landscapist-glide = { module = "com.github.skydoves:landscapist-glide", version.ref = "compose-landscapist-glide" }
# Hilt
hilt-compiler = { module = "com.google.dagger:hilt-compiler", version.ref = "hilt" }
hilt-android = { module = "com.google.dagger:hilt-android", version.ref = "hilt" }
hilt-workmanager = { module = "androidx.hilt:hilt-work", version.ref = "hilt-androidx" }
hilt-androidx-compiler = { module = "androidx.hilt:hilt-compiler", version.ref = "hilt-androidx" }
# Room
androidx-room-testing = { module = "androidx.room:room-testing", version.ref = "room" }
androidx-room-compiler = { module = "androidx.room:room-compiler", version.ref = "room" }
androidx-room-ktx = { module = "androidx.room:room-ktx", version.ref = "room" }
androidx-room-runtime = { module = "androidx.room:room-runtime", version.ref = "room" }
#Networking
retrofit = { module = "com.squareup.retrofit2:retrofit", version.ref = "retrofit" }
okhttp-interceptor-logging = { module = "com.squareup.okhttp3:logging-interceptor", version.ref = "okhttp-interceptor-logging" }
okhttp = { module = "com.squareup.okhttp3:okhttp", version.ref = "okhttp" }
okhttp-interceptor-brotli = { module = "com.squareup.okhttp3:okhttp-brotli", version.ref = "okhttp" }
okhttp-glideIntegration = { module = "com.github.bumptech.glide:okhttp3-integration", version.ref = "okhttp-glideIntegration" }
# Data manipulation (html, serialization, ...)
gson = { module = "com.google.code.gson:gson", version.ref = "gson" }
jsoup = { module = "org.jsoup:jsoup", version.ref = "jsoup" }
moshi = { module = "com.squareup.moshi:moshi", version.ref = "moshi" }
moshi-kotlin = { module = "com.squareup.moshi:moshi-kotlin", version.ref = "moshi" }
kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlinx-serialization-json" }
# Text extractors
readability4j = { module = "net.dankito.readability4j:readability4j", version.ref = "readability4j" }
crux = { module = "com.chimbori.crux:crux", version.ref = "crux" }
# Testing
test-mockito-kotlin = { module = "org.mockito.kotlin:mockito-kotlin", version.ref = "testing-mockito-kotlin" }
test-junit = { module = "junit:junit", version.ref = "junit" }
test-androidx-orchestrator = { module = "androidx.test:orchestrator", version.ref = "androidx-testing-orchestrator" }
test-androidx-junit-ktx = { module = "androidx.test.ext:junit-ktx", version.ref = "androidx-testing-junit" }
test-androidx-espresso-core = { module = "androidx.test.espresso:espresso-core", version.ref = "androidx-testing-espresso" }
test-androidx-runner = { module = "androidx.test:runner", version.ref = "androidx-testing-runner" }
test-androidx-rules = { module = "androidx.test:rules", version.ref = "androidx-testing-rules" }
test-androidx-core-ktx = { module = "androidx.test:core-ktx", version.ref = "androidx-testing-core" }
# Kotlin
kotlin-stdlib = { module = "org.jetbrains.kotlin:kotlin-stdlib", version.ref = "kotlin" }
kotlin-script-runtime = { module = "org.jetbrains.kotlin:kotlin-script-runtime", version.ref = "kotlin" }
kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlinx-coroutines-core" }
kotlinx-coroutines-playServices = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-play-services", version.ref = "kotlinx-coroutines-playServices" }
# Android
androidx-constraintlayout = { module = "androidx.constraintlayout:constraintlayout", version.ref = "androidx-constraintLayout" }
androidx-fragment-ktx = { module = "androidx.fragment:fragment-ktx", version.ref = "androidx-fragment-ktx" }
androidx-activity-ktx = { module = "androidx.activity:activity-ktx", version.ref = "androidx-activity-ktx" }
androidx-core-ktx = { module = "androidx.core:core-ktx", version.ref = "androidx-core-ktx" }
androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "androidx-appcompat" }
androidx-lifecycle-common-java8 = { module = "androidx.lifecycle:lifecycle-common-java8", version.ref = "androidx-lifecycle" }
androidx-coordinatorlayout = { module = "androidx.coordinatorlayout:coordinatorlayout", version.ref = "androidx-coordinatorLayout" }
androidx-lifecycle-livedata-ktx = { module = "androidx.lifecycle:lifecycle-livedata-ktx", version.ref = "androidx-lifecycle" }
androidx-lifecycle-viewmodel-ktx = { module = "androidx.lifecycle:lifecycle-viewmodel-ktx", version.ref = "androidx-lifecycle" }
androidx-startup = { module = "androidx.startup:startup-runtime", version.ref = "androidx-startup" }
androidx-workmanager = { module = "androidx.work:work-runtime-ktx", version.ref = "androidx-workmanager" }
androidx-documentfile = { module = "androidx.documentfile:documentfile", version.ref = "androidx-documentfile" }
androidx-media = { module = "androidx.media:media", version.ref = "androidx-media" }
androidx-navigation-ui-ktx = { module = "androidx.navigation:navigation-ui-ktx", version.ref = "androidx-navigation-ui-ktx" }
androidx-navigation-fragment-ktx = { module = "androidx.navigation:navigation-fragment-ktx", version.ref = "androidx-navigation-fragment-ktx" }
androidx-preference-ktx = { module = "androidx.preference:preference-ktx", version.ref = "androidx-preference-ktx" }
material = { module = "com.google.android.material:material", version.ref = "androidx-material" }
# machine translations
translate = { module = "com.google.mlkit:translate", version.ref = "translate" }
# Logging
timber = { module = "com.jakewharton.timber:timber", version.ref = "timber" }
[plugins]
android-application = { id = "com.android.application", version.ref = "plugin-agp" }
hilt = { id = "com.google.dagger.hilt.android", version.ref = "hilt" }
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
kotlin-parcelize = { id = "org.jetbrains.kotlin.plugin.parcelize", version.ref = "kotlin" }
kotlin-scripting = { id = "org.jetbrains.kotlin.plugin.scripting", version.ref = "kotlin" }
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
[bundles]