mirror of
https://github.com/msfjarvis/compose-lobsters
synced 2025-08-17 21:27:01 +05:30
Uses Chris Banes' amazing Accompanist library to interface with Coil and load images with minimum hassle. The resultant UI has been made to loosely resemble https://lobste.rs since our end goal is to fully match the website. Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
94 lines
3.9 KiB
Groovy
94 lines
3.9 KiB
Groovy
plugins {
|
|
id "kotlin-kapt"
|
|
id "dagger.hilt.android.plugin"
|
|
}
|
|
|
|
final def keystorePropertiesFile = rootProject.file("keystore.properties")
|
|
android {
|
|
adbOptions {
|
|
installOptions = ["--user 0"]
|
|
}
|
|
defaultConfig {
|
|
applicationId "dev.msfjarvis.lobsters"
|
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
minifyEnabled false
|
|
proguardFiles getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro"
|
|
}
|
|
}
|
|
|
|
compileOptions.coreLibraryDesugaringEnabled = true
|
|
|
|
buildFeatures.compose = true
|
|
|
|
composeOptions {
|
|
kotlinCompilerVersion "${kotlin_version}"
|
|
kotlinCompilerExtensionVersion "${compose_version}"
|
|
}
|
|
|
|
if (keystorePropertiesFile.exists()) {
|
|
final def keystoreProperties = new Properties()
|
|
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
|
|
|
|
signingConfigs {
|
|
release {
|
|
keyAlias keystoreProperties["keyAlias"]
|
|
keyPassword keystoreProperties["keyPassword"]
|
|
storeFile rootProject.file(keystoreProperties["storeFile"])
|
|
storePassword keystoreProperties["storePassword"]
|
|
}
|
|
}
|
|
buildTypes.debug.signingConfig = signingConfigs.release
|
|
buildTypes.release.signingConfig = signingConfigs.release
|
|
}
|
|
}
|
|
|
|
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach {
|
|
kotlinOptions {
|
|
freeCompilerArgs += [
|
|
"-Xallow-jvm-ir-dependencies",
|
|
"-Xskip-prerelease-check",
|
|
"-Xopt-in=kotlin.RequiresOptIn",
|
|
"-Xopt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
|
|
]
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
|
|
kapt "com.google.dagger:hilt-compiler:$hilt_dagger_version"
|
|
kapt "androidx.hilt:hilt-compiler:$hilt_androidx_version"
|
|
implementation(project(":data"))
|
|
implementation(project(":lobsters-api"))
|
|
implementation(project(":model"))
|
|
implementation "androidx.core:core-ktx:$core_version"
|
|
implementation "androidx.activity:activity-ktx:$activity_version"
|
|
implementation "androidx.appcompat:appcompat:$appcompat_version"
|
|
implementation "androidx.browser:browser:$browser_version"
|
|
implementation "androidx.compose.foundation:foundation:$compose_version"
|
|
implementation "androidx.compose.foundation:foundation-layout:$compose_version"
|
|
implementation "androidx.compose.foundation:foundation-text:$compose_version"
|
|
implementation "androidx.compose.runtime:runtime:$compose_version"
|
|
implementation "androidx.compose.material:material:$compose_version"
|
|
implementation "androidx.compose.compiler:compiler:$compose_version"
|
|
implementation "androidx.compose.ui:ui:$compose_version"
|
|
implementation "androidx.compose.ui:ui-text:$compose_version"
|
|
implementation "androidx.compose.ui:ui-text-android:$compose_version"
|
|
implementation "androidx.compose.ui:ui-unit:$compose_version"
|
|
implementation "androidx.hilt:hilt-lifecycle-viewmodel:$hilt_androidx_version"
|
|
implementation "androidx.lifecycle:lifecycle-runtime-ktx:$lifecycle_version"
|
|
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
|
|
implementation "androidx.ui:ui-tooling:$compose_version"
|
|
implementation "com.google.android.material:material:$material_version"
|
|
implementation "com.google.dagger:hilt-android:$hilt_dagger_version"
|
|
implementation "dev.chrisbanes.accompanist:accompanist-coil:$accompanist_version"
|
|
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutines_version"
|
|
implementation "saschpe.android:customtabs:$customtabs_version"
|
|
androidTestImplementation "com.google.dagger:hilt-android-testing:$hilt_dagger_version"
|
|
testImplementation "junit:junit:$junit_version"
|
|
androidTestImplementation "androidx.ui:ui-test:$compose_version"
|
|
coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:$desugar_version"
|
|
}
|