OXYGENHUB
# 840c75813f86 oxygenhub-android / gradle / libs.versions.toml
4.4 KiB · last changed Alerts from the hub: the phone registers its Cloud Messaging token and an X25519 key kept by the Keystore, and opens and shows what the hub seals to it with the Rust core; Firebase from google-services.json (the release job's firebase-config secret); pins OxygenFlow main (refs #16) 8 days ago source blame history raw
1
[versions]
2
agp = "9.4.1"
3
coreKtx = "1.16.0"
4
junit = "4.13.2"
5
junitVersion = "1.1.5"
6
espressoCore = "3.5.1"
7
lifecycle = "2.9.4"
8
activityCompose = "1.10.1"
9
kotlin = "2.2.10"
10
composeBom = "2026.02.01"
11
navigation = "2.9.5"
12
adaptive = "1.2.0"
13
kotlinxSerialization = "1.9.0"
14
coroutines = "1.10.2"
15
okhttp = "4.12.0"
16
jna = "5.17.0"
17
screenshot = "0.0.1-alpha16"
18
# The code browser (#3): Markdown rendered in Compose, and syntax highlighting.
19
markdownRenderer = "0.38.1"
20
highlights = "1.1.0"
21
# Phone alerts (#16): Cloud Messaging only, no analytics.
22
firebaseBom = "34.19.0"
23
24
[libraries]
25
firebase-bom = { group = "com.google.firebase", name = "firebase-bom", version.ref = "firebaseBom" }
26
firebase-messaging = { group = "com.google.firebase", name = "firebase-messaging" }
27
markdown-renderer-m3 = { group = "com.mikepenz", name = "multiplatform-markdown-renderer-m3", version.ref = "markdownRenderer" }
28
highlights = { group = "dev.snipme", name = "highlights", version.ref = "highlights" }
29
androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" }
30
junit = { group = "junit", name = "junit", version.ref = "junit" }
31
androidx-junit = { group = "androidx.test.ext", name = "junit", version.ref = "junitVersion" }
32
androidx-espresso-core = { group = "androidx.test.espresso", name = "espresso-core", version.ref = "espressoCore" }
33
androidx-lifecycle-runtime-ktx = { group = "androidx.lifecycle", name = "lifecycle-runtime-ktx", version.ref = "lifecycle" }
34
androidx-lifecycle-runtime-compose = { group = "androidx.lifecycle", name = "lifecycle-runtime-compose", version.ref = "lifecycle" }
35
androidx-lifecycle-viewmodel-compose = { group = "androidx.lifecycle", name = "lifecycle-viewmodel-compose", version.ref = "lifecycle" }
36
androidx-activity-compose = { group = "androidx.activity", name = "activity-compose", version.ref = "activityCompose" }
37
androidx-navigation-compose = { group = "androidx.navigation", name = "navigation-compose", version.ref = "navigation" }
38
androidx-compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "composeBom" }
39
androidx-compose-ui = { group = "androidx.compose.ui", name = "ui" }
40
androidx-compose-ui-graphics = { group = "androidx.compose.ui", name = "ui-graphics" }
41
androidx-compose-ui-tooling = { group = "androidx.compose.ui", name = "ui-tooling" }
42
androidx-compose-ui-tooling-preview = { group = "androidx.compose.ui", name = "ui-tooling-preview" }
43
androidx-compose-ui-test-manifest = { group = "androidx.compose.ui", name = "ui-test-manifest" }
44
androidx-compose-ui-test-junit4 = { group = "androidx.compose.ui", name = "ui-test-junit4" }
45
androidx-compose-material3 = { group = "androidx.compose.material3", name = "material3" }
46
androidx-compose-material3-navigation-suite = { group = "androidx.compose.material3", name = "material3-adaptive-navigation-suite" }
47
androidx-compose-material3-adaptive = { group = "androidx.compose.material3.adaptive", name = "adaptive", version.ref = "adaptive" }
48
androidx-compose-material3-adaptive-layout = { group = "androidx.compose.material3.adaptive", name = "adaptive-layout", version.ref = "adaptive" }
49
androidx-compose-material3-adaptive-navigation = { group = "androidx.compose.material3.adaptive", name = "adaptive-navigation", version.ref = "adaptive" }
50
kotlinx-serialization-json = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json", version.ref = "kotlinxSerialization" }
51
kotlinx-coroutines-android = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-android", version.ref = "coroutines" }
52
kotlinx-coroutines-test = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-test", version.ref = "coroutines" }
53
okhttp = { group = "com.squareup.okhttp3", name = "okhttp", version.ref = "okhttp" }
54
androidx-compose-material-icons-extended = { group = "androidx.compose.material", name = "material-icons-extended" }
55
jna = { group = "net.java.dev.jna", name = "jna", version.ref = "jna" }
56
screenshot-validation-api = { group = "com.android.tools.screenshot", name = "screenshot-validation-api", version.ref = "screenshot" }
57
okhttp-mockwebserver = { group = "com.squareup.okhttp3", name = "mockwebserver", version.ref = "okhttp" }
58
59
[plugins]
60
android-application = { id = "com.android.application", version.ref = "agp" }
61
kotlin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
62
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
63
screenshot = { id = "com.android.compose.screenshot", version.ref = "screenshot" }