-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathbuild.gradle
More file actions
115 lines (96 loc) · 4.08 KB
/
build.gradle
File metadata and controls
115 lines (96 loc) · 4.08 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
plugins {
id 'com.android.application'
id 'org.jetbrains.kotlin.android'
id 'org.jetbrains.kotlin.plugin.compose'
id 'org.jetbrains.kotlin.plugin.serialization'
id 'app.cash.paparazzi'
}
android {
namespace 'io.github.lordraydenmk.themoviedbapp'
compileSdkVersion 36
defaultConfig {
applicationId "io.github.lordraydenmk.themoviedbapp"
minSdkVersion 26
targetSdkVersion 36
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
def baseUrl = '"' + project.property("tmdb_base_url") + '"'
buildConfigField("String", "TMDB_BASE_URL", baseUrl)
if (project.hasProperty("tmdb_api_key")) {
def tmbdApiKey = '"' + project.property("tmdb_api_key") + '"'
buildConfigField("String", "TMDB_API_KEY", tmbdApiKey)
} else {
// the app needs a `tmdb_api_key as a gradle property to run
// to get one visit: https://developer.themoviedb.org/reference/intro/getting-started
throw new GradleException("Please provide the TMDB API key as a gradle property")
}
}
buildFeatures {
compose true
buildConfig true
}
sourceSets {
test.java.srcDirs += "src/testFixtures/kotlin"
test.java.srcDirs += "src/paparazzi/kotlin"
}
kotlin {
jvmToolchain(21)
}
testOptions {
unitTests.all {
useJUnitPlatform()
}
animationsDisabled = true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
packagingOptions {
resources.excludes.add("META-INF/*")
}
}
dependencies {
def coroutines_version = "1.10.2"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutines_version"
implementation 'androidx.core:core-ktx:1.17.0'
implementation 'androidx.appcompat:appcompat:1.7.1'
implementation 'androidx.activity:activity-compose:1.12.2'
def composeBom = platform('androidx.compose:compose-bom:2025.12.01')
implementation composeBom
implementation "androidx.compose.ui:ui"
implementation "androidx.compose.foundation:foundation"
implementation "androidx.compose.material3:material3"
implementation "androidx.compose.material:material-icons-core:1.7.8"
implementation "androidx.compose.ui:ui-tooling"
implementation 'androidx.appcompat:appcompat:1.7.1'
implementation 'com.google.android.material:material:1.13.0'
def lifecycle = "2.10.0"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle"
implementation "androidx.lifecycle:lifecycle-runtime-compose:$lifecycle"
implementation 'androidx.fragment:fragment-ktx:1.8.9'
def nav_version = "2.9.6"
implementation "androidx.navigation:navigation-fragment-ktx:$nav_version"
implementation "androidx.navigation:navigation-ui-ktx:$nav_version"
implementation 'com.jakewharton.timber:timber:5.0.1'
def coil_version = "3.3.0"
implementation "io.coil-kt.coil3:coil-compose:$coil_version"
implementation "io.coil-kt.coil3:coil-network-okhttp:$coil_version"
implementation(platform("com.squareup.okhttp3:okhttp-bom:5.3.2"))
implementation("com.squareup.okhttp3:okhttp")
implementation("com.squareup.okhttp3:logging-interceptor")
def retrofit = "3.0.0"
implementation "com.squareup.retrofit2:retrofit:$retrofit"
implementation "com.jakewharton.retrofit:retrofit2-kotlinx-serialization-converter:1.0.0"
implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.9.0"
testImplementation composeBom
debugImplementation "androidx.compose.ui:ui-test-manifest"
testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutines_version"
testImplementation "io.kotest:kotest-assertions-core-jvm:6.0.7"
testImplementation 'app.cash.turbine:turbine:1.2.1'
testImplementation 'org.junit.vintage:junit-vintage-engine:6.0.1'
testImplementation "io.coil-kt.coil3:coil-test:$coil_version"
}