plugins { alias(libs.plugins.android.application) alias(libs.plugins.kotlin.compose) alias(libs.plugins.kotlin.serialization) } android { namespace = "com.example.fluffytrix" compileSdk { version = release(36) } defaultConfig { applicationId = "com.example.fluffytrix" minSdk = 34 targetSdk = 36 versionCode = 1 versionName = "1.1" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" buildConfigField("String", "TENOR_API_KEY", "\"AIzaSyAyimkuYQYF_FXVALexPuGQctUWRURdCDY\"") } buildTypes { debug { isMinifyEnabled = false isShrinkResources = false isDebuggable = true } release { isMinifyEnabled = true proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) signingConfig = signingConfigs.getByName("debug") } } compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } buildFeatures { compose = true buildConfig = true } packaging { dex { useLegacyPackaging = true } } } dependencies { implementation(libs.androidx.core.ktx) implementation(libs.androidx.appcompat) implementation(libs.material) // Compose implementation(platform(libs.compose.bom)) implementation(libs.compose.ui) implementation(libs.compose.ui.tooling.preview) implementation(libs.compose.material3) implementation(libs.compose.icons.extended) implementation(libs.compose.foundation) implementation(libs.activity.compose) implementation(libs.navigation.compose) implementation(libs.lifecycle.viewmodel.compose) implementation(libs.lifecycle.runtime.compose) implementation(libs.lifecycle.process) debugImplementation(libs.compose.ui.tooling) // Koin implementation(libs.koin.android) implementation(libs.koin.compose) // DataStore implementation(libs.datastore.preferences) // Coroutines implementation(libs.coroutines.core) implementation(libs.coroutines.android) // Matrix Rust SDK implementation(libs.matrix.rust.sdk) // Kotlinx Serialization implementation(libs.kotlinx.serialization.json) // Coil (image loading) implementation(libs.coil.compose) implementation(libs.coil.network.okhttp) implementation(libs.coil.gif) implementation(libs.coil.video) // Media3 (video playback) implementation(libs.media3.exoplayer) implementation(libs.media3.ui) // Markdown renderer implementation(libs.markdown.renderer.core) implementation(libs.markdown.renderer.m3) implementation(libs.markdown.renderer.code) implementation(libs.markdown.renderer.coil3) // Jetpack Emoji Picker implementation(libs.emoji.picker) testImplementation(libs.junit) androidTestImplementation(libs.androidx.junit) androidTestImplementation(libs.androidx.espresso.core) }