diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 5c999b5..85262cd 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -2,6 +2,7 @@ plugins { alias(libs.plugins.android.application) alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.compose) + id("org.jetbrains.kotlin.plugin.serialization") version "2.1.20" } android { @@ -41,6 +42,43 @@ android { dependencies { + // ViewModel + implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.7") + // ViewModel utilities for Compose + implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.8.7") + // Lifecycle utilities for Compose + implementation("androidx.lifecycle:lifecycle-runtime-compose:2.8.7") + + // Koin + implementation("io.insert-koin:koin-core:4.0.3") + implementation("io.insert-koin:koin-android:4.0.3") + implementation("io.insert-koin:koin-androidx-compose:4.0.3") + implementation("io.insert-koin:koin-androidx-compose-navigation:4.0.3") + + // Compose Navigation + implementation("androidx.navigation:navigation-compose:2.8.9") + + // JSON serialization library, works with the Kotlin serialization plugin + implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.8.0") + + // SplashScreen + implementation("androidx.core:core-splashscreen:1.2.0-beta01") + + // Icon + // Compose Material Icons Extended + implementation("androidx.compose.material:material-icons-extended:1.7.8") + + // Retrofit + implementation("com.squareup.retrofit2:retrofit:2.11.0") + implementation("com.squareup.retrofit2:converter-gson:2.11.0") + implementation("com.squareup.okhttp3:okhttp:4.12.0") + implementation("com.squareup.okhttp3:logging-interceptor:4.12.0") + + // Material 3 + implementation("androidx.compose.material3:material3:1.3.1") + implementation("androidx.compose.material3:material3-android:1.3.1") + implementation("androidx.compose.ui:ui:1.7.8") + implementation(libs.androidx.core.ktx) implementation(libs.androidx.lifecycle.runtime.ktx) implementation(libs.androidx.activity.compose) diff --git a/build.gradle.kts b/build.gradle.kts index 952b930..3639073 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -3,4 +3,5 @@ plugins { alias(libs.plugins.android.application) apply false alias(libs.plugins.kotlin.android) apply false alias(libs.plugins.kotlin.compose) apply false + id("org.jetbrains.kotlin.plugin.serialization") version "2.1.20" apply false } \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 6313c8f..18377f0 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,13 +1,13 @@ [versions] agp = "8.9.1" -kotlin = "2.0.21" +kotlin = "2.1.20" coreKtx = "1.15.0" junit = "4.13.2" junitVersion = "1.2.1" espressoCore = "3.6.1" lifecycleRuntimeKtx = "2.8.7" activityCompose = "1.10.1" -composeBom = "2024.09.00" +composeBom = "2025.03.01" [libraries] androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" }