plugins { id("com.android.application") id("org.jetbrains.kotlin.android") id("org.jetbrains.kotlin.plugin.compose") } android { namespace = "com.marcus.meditationtimer" compileSdk = 35 defaultConfig { applicationId = "com.marcus.meditationtimer" minSdk = 29 targetSdk = 35 versionCode = System.getenv("VERSION_CODE")?.toIntOrNull() ?: 2 versionName = System.getenv("VERSION_NAME") ?: "1.1-dev" } val releaseKeystore = System.getenv("KEYSTORE_FILE") if (releaseKeystore != null) { signingConfigs { create("release") { storeFile = file(releaseKeystore) storePassword = System.getenv("KEYSTORE_PASSWORD") keyAlias = System.getenv("KEY_ALIAS") ?: "meditation" keyPassword = System.getenv("KEY_PASSWORD") ?: System.getenv("KEYSTORE_PASSWORD") } } } buildTypes { release { isMinifyEnabled = false if (releaseKeystore != null) { signingConfig = signingConfigs.getByName("release") } } } compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = "17" } buildFeatures { compose = true } } dependencies { val composeBom = platform("androidx.compose:compose-bom:2024.10.01") implementation(composeBom) implementation("androidx.compose.ui:ui") implementation("androidx.compose.material3:material3") implementation("androidx.activity:activity-compose:1.9.3") implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.7") }