plugins { id 'com.android.application' id 'org.jetbrains.kotlin.android' id 'com.google.devtools.ksp' } android { namespace 'com.menagerie.ophelia' compileSdk 34 defaultConfig { applicationId "com.menagerie.ophelia" minSdk 27 targetSdk 33 versionCode 1 versionName "e1.0.0.b6" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { useSupportLibrary true } } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility JavaVersion.VERSION_17 targetCompatibility JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = '17' } buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion '1.4.3' } packaging { resources { excludes += '/META-INF/{AL2.0,LGPL2.1}' } } } dependencies { def activity_version = '1.8.0' def lifecycle_version = "2.6.2" def arch_version = "2.2.0" def roomVersion = '2.3.0' def nav_version = "2.7.4" //Fragment def fragment_version = "1.6.1" implementation 'androidx.appcompat:appcompat:1.6.1' implementation "androidx.activity:activity-ktx:$activity_version" implementation 'androidx.core:core-ktx:1.12.0' implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.6.2' implementation 'androidx.activity:activity-compose:1.8.0' implementation platform('androidx.compose:compose-bom:2023.03.00') implementation 'androidx.compose.ui:ui' implementation 'androidx.compose.ui:ui-graphics' implementation 'androidx.compose.ui:ui-tooling-preview' implementation 'androidx.compose.material3:material3:1.1.2' testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test.ext:junit:1.1.5' androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1' androidTestImplementation platform('androidx.compose:compose-bom:2023.03.00') androidTestImplementation 'androidx.compose.ui:ui-test-junit4' debugImplementation 'androidx.compose.ui:ui-tooling' debugImplementation 'androidx.compose.ui:ui-test-manifest' implementation 'androidx.room:room-common:2.5.2' implementation 'androidx.room:room-ktx:2.5.2' implementation 'androidx.navigation:navigation-runtime-ktx:2.7.4' implementation('androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha13') implementation 'androidx.core:core-splashscreen:1.0.1' implementation "androidx.navigation:navigation-compose:$nav_version" // ViewModel implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version" // ViewModel utilities for Compose implementation "androidx.lifecycle:lifecycle-viewmodel-compose:$lifecycle_version" // LiveData implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version" // Lifecycles only (without ViewModel or LiveData) implementation "androidx.lifecycle:lifecycle-runtime-ktx:$lifecycle_version" // Lifecycle utilities for Compose implementation "androidx.lifecycle:lifecycle-runtime-compose:$lifecycle_version" // Kotlin implementation "androidx.fragment:fragment-ktx:$fragment_version" // Saved state module for ViewModel implementation "androidx.lifecycle:lifecycle-viewmodel-savedstate:$lifecycle_version" ksp 'androidx.room:room-compiler:2.5.0' // Annotation processor annotationProcessor "androidx.room:room-compiler:$roomVersion" // alternately - if using Java8, use the following instead of lifecycle-compiler implementation "androidx.lifecycle:lifecycle-common-java8:$lifecycle_version" // optional - helpers for implementing LifecycleOwner in a Service implementation "androidx.lifecycle:lifecycle-service:$lifecycle_version" // optional - ProcessLifecycleOwner provides a lifecycle for the whole application process implementation "androidx.lifecycle:lifecycle-process:$lifecycle_version" // optional - ReactiveStreams support for LiveData implementation "androidx.lifecycle:lifecycle-reactivestreams-ktx:$lifecycle_version" // optional - Test helpers for LiveData testImplementation "androidx.arch.core:core-testing:$arch_version" // optional - Test helpers for Lifecycle runtime testImplementation "androidx.lifecycle:lifecycle-runtime-testing:$lifecycle_version" //Runtime implementation "androidx.compose.runtime:runtime:1.5.3" implementation "androidx.compose.runtime:runtime-livedata:1.5.3" implementation "androidx.compose.runtime:runtime-rxjava2:1.5.3" }