Skip to content

Commit 5538cf9

Browse files
committed
Init: 버전 카탈로그 정의
1 parent a4a4566 commit 5538cf9

3 files changed

Lines changed: 174 additions & 33 deletions

File tree

app/build.gradle.kts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
plugins {
22
alias(libs.plugins.android.application)
33
alias(libs.plugins.kotlin.android)
4-
alias(libs.plugins.kotlin.compose)
4+
alias(libs.plugins.compose.compiler)
55
}
66

77
android {
@@ -44,16 +44,16 @@ dependencies {
4444
implementation(libs.androidx.core.ktx)
4545
implementation(libs.androidx.lifecycle.runtime.ktx)
4646
implementation(libs.androidx.activity.compose)
47-
implementation(platform(libs.androidx.compose.bom))
48-
implementation(libs.androidx.ui)
49-
implementation(libs.androidx.ui.graphics)
50-
implementation(libs.androidx.ui.tooling.preview)
51-
implementation(libs.androidx.material3)
47+
implementation(platform(libs.compose.bom))
48+
implementation(libs.compose.ui)
49+
implementation(libs.compose.ui.graphics)
50+
implementation(libs.compose.ui.tooling.preview)
51+
implementation(libs.compose.material3)
5252
testImplementation(libs.junit)
5353
androidTestImplementation(libs.androidx.junit)
5454
androidTestImplementation(libs.androidx.espresso.core)
55-
androidTestImplementation(platform(libs.androidx.compose.bom))
56-
androidTestImplementation(libs.androidx.ui.test.junit4)
57-
debugImplementation(libs.androidx.ui.tooling)
58-
debugImplementation(libs.androidx.ui.test.manifest)
55+
androidTestImplementation(platform(libs.compose.bom))
56+
androidTestImplementation(libs.compose.ui.test.junit4)
57+
debugImplementation(libs.compose.ui.tooling)
58+
debugImplementation(libs.compose.ui.test.manifest)
5959
}

build.gradle.kts

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
// Top-level build file where you can add configuration options common to all sub-projects/modules.
22
plugins {
33
alias(libs.plugins.android.application) apply false
4+
alias(libs.plugins.compose.compiler) apply false
45
alias(libs.plugins.kotlin.android) apply false
5-
alias(libs.plugins.kotlin.compose) apply false
6-
alias(libs.plugins.ktlint.gradle) apply false
6+
alias(libs.plugins.ktlint) apply false
77
}
88

9-
subprojects {
10-
apply(plugin = "org.jlleitschuh.gradle.ktlint")
11-
}
9+
allprojects {
10+
apply {
11+
plugin(rootProject.libs.plugins.ktlint.get().pluginId)
12+
}
13+
}

gradle/libs.versions.toml

Lines changed: 157 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,173 @@
11
[versions]
2+
## SDK versions
3+
compileSdk = "35"
4+
minSdk = "28"
5+
targetSdk = "35"
6+
7+
## App Versioning
8+
versionCode = "1"
9+
versionName = "1.0"
10+
11+
# Android Gradle Plugin
212
androidGradlePlugin = "8.10.1"
13+
14+
# Formatting Plugin
15+
ktlint = "12.3.0"
16+
17+
# AndroidX
18+
androidxCore = "1.16.0"
19+
androidxLifecycle = "2.9.1"
20+
androidxActivity = "1.10.1"
21+
androidxDatastore = "1.1.7"
22+
androidxAppcompat = "1.7.1"
23+
24+
# Kotlin
325
kotlin = "2.1.20"
4-
coreKtx = "1.16.0"
26+
kotlinxCoroutines = "1.10.2"
27+
kotlinxSerializationJson = "1.8.1"
28+
29+
# Ksp
30+
ksp = "2.1.20-1.0.32"
31+
32+
# Hilt
33+
hilt = "2.56.2"
34+
hiltNavigationCompose = "1.2.0"
35+
36+
# Compose
37+
composeBom = "2025.06.00"
38+
composeNavigation = "2.9.0"
39+
40+
# Network
41+
okhttp = "4.11.0"
42+
retrofit = "2.11.0"
43+
44+
# Test
545
junit = "4.13.2"
646
junitVersion = "1.2.1"
747
espressoCore = "3.6.1"
8-
lifecycleRuntimeKtx = "2.9.1"
9-
activityCompose = "1.10.1"
10-
composeBom = "2025.06.00"
11-
ktlint = "12.3.0"
48+
49+
## Other
50+
material = "1.12.0"
51+
timber = "5.0.1"
52+
orbit = "6.1.0"
1253

1354
[libraries]
14-
androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" }
55+
## Androidx Core
56+
androidx-appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "androidxAppcompat" }
57+
androidx-activity-compose = { group = "androidx.activity", name = "activity-compose", version.ref = "androidxActivity" }
58+
androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "androidxCore" }
59+
androidx-datastore = { group = "androidx.datastore", name = "datastore-preferences", version.ref = "androidxDatastore" }
60+
androidx-lifecycle-compose = { group = "androidx.lifecycle", name = "lifecycle-runtime-compose", version.ref = "androidxLifecycle" }
61+
androidx-lifecycle-runtime-ktx = { group = "androidx.lifecycle", name = "lifecycle-runtime-ktx", version.ref = "androidxLifecycle" }
62+
androidx-lifecycle-viewmodel-ktx = { group = "androidx.lifecycle", name = "lifecycle-viewmodel-ktx", version.ref = "androidxLifecycle" }
63+
androidx-lifecycle-viewmodel-compose = { group = "androidx.lifecycle", name = "lifecycle-viewmodel-compose", version.ref = "androidxLifecycle" }
64+
65+
## Compose
66+
compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "composeBom" }
67+
compose-ui = { group = "androidx.compose.ui", name = "ui" }
68+
compose-ui-graphics = { group = "androidx.compose.ui", name = "ui-graphics" }
69+
compose-ui-tooling = { group = "androidx.compose.ui", name = "ui-tooling" }
70+
compose-ui-tooling-preview = { group = "androidx.compose.ui", name = "ui-tooling-preview" }
71+
compose-foundation = { group = "androidx.compose.foundation", name = "foundation" }
72+
compose-material3 = { group = "androidx.compose.material3", name = "material3" }
73+
compose-runtime = { group = "androidx.compose.runtime", name = "runtime" }
74+
compose-navigation = { group = "androidx.navigation", name = "navigation-compose", version.ref = "composeNavigation" }
75+
compose-hilt-navigation = { group = "androidx.hilt", name = "hilt-navigation-compose", version.ref = "hiltNavigationCompose" }
76+
compose-ui-test-manifest = { group = "androidx.compose.ui", name = "ui-test-manifest" }
77+
compose-ui-test-junit4 = { group = "androidx.compose.ui", name = "ui-test-junit4" }
78+
79+
## Kotlin
80+
kotlinx-coroutines-core = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-core", version.ref = "kotlinxCoroutines" }
81+
kotlinx-coroutines-android = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-android", version.ref = "kotlinxCoroutines" }
82+
kotlinx-serialization-json = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json", version.ref = "kotlinxSerializationJson" }
83+
84+
## Hilt
85+
hilt-android = { group = "com.google.dagger", name = "hilt-android", version.ref = "hilt" }
86+
hilt-compiler = { group = "com.google.dagger", name = "hilt-android-compiler", version.ref = "hilt" }
87+
88+
# Orbit
89+
orbit-core = { group = "org.orbit-mvi", name = "orbit-core", version.ref = "orbit" }
90+
orbit-compose = { group = "org.orbit-mvi", name = "orbit-compose", version.ref = "orbit" }
91+
orbit-viewmodel = { group = "org.orbit-mvi", name = "orbit-viewmodel", version.ref = "orbit" }
92+
93+
## retrofit
94+
retrofit-bom = { group = "com.squareup.retrofit2", name = "retrofit-bom", version.ref = "retrofit" }
95+
retrofit = { group = "com.squareup.retrofit2", name = "retrofit" }
96+
retrofit-kotlin-serialization-converter = { group = "com.squareup.retrofit2", name = "converter-kotlinx-serialization" }
97+
98+
## okhttp
99+
okhttp-bom = { group = "com.squareup.okhttp3", name = "okhttp-bom", version.ref = "okhttp" }
100+
okhttp = { group = "com.squareup.okhttp3", name = "okhttp" }
101+
okhttp-logging-interceptor = { group = "com.squareup.okhttp3", name = "logging-interceptor" }
102+
103+
## Test
15104
junit = { group = "junit", name = "junit", version.ref = "junit" }
16105
androidx-junit = { group = "androidx.test.ext", name = "junit", version.ref = "junitVersion" }
17106
androidx-espresso-core = { group = "androidx.test.espresso", name = "espresso-core", version.ref = "espressoCore" }
18-
androidx-lifecycle-runtime-ktx = { group = "androidx.lifecycle", name = "lifecycle-runtime-ktx", version.ref = "lifecycleRuntimeKtx" }
19-
androidx-activity-compose = { group = "androidx.activity", name = "activity-compose", version.ref = "activityCompose" }
20-
androidx-compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "composeBom" }
21-
androidx-ui = { group = "androidx.compose.ui", name = "ui" }
22-
androidx-ui-graphics = { group = "androidx.compose.ui", name = "ui-graphics" }
23-
androidx-ui-tooling = { group = "androidx.compose.ui", name = "ui-tooling" }
24-
androidx-ui-tooling-preview = { group = "androidx.compose.ui", name = "ui-tooling-preview" }
25-
androidx-ui-test-manifest = { group = "androidx.compose.ui", name = "ui-test-manifest" }
26-
androidx-ui-test-junit4 = { group = "androidx.compose.ui", name = "ui-test-junit4" }
27-
androidx-material3 = { group = "androidx.compose.material3", name = "material3" }
107+
108+
## Other
109+
material = { group = "com.google.android.material", name = "material", version.ref = "material" }
110+
timber = { group = "com.jakewharton.timber", name = "timber", version.ref = "timber" }
111+
112+
[bundles]
113+
androidx-core = [
114+
"androidx-core-ktx",
115+
"androidx-appcompat",
116+
"androidx-lifecycle-runtime-ktx",
117+
"androidx-lifecycle-viewmodel-ktx"
118+
]
119+
120+
compose = [
121+
"compose-ui",
122+
"compose-ui-graphics",
123+
"compose-ui-tooling-preview",
124+
"compose-foundation",
125+
"compose-material3",
126+
"compose-navigation",
127+
"compose-hilt-navigation",
128+
"compose-runtime",
129+
"androidx-activity-compose"
130+
]
131+
132+
compose-lifecycle = [
133+
"androidx-lifecycle-compose",
134+
"androidx-lifecycle-viewmodel-compose"
135+
]
136+
137+
compose-debug = [
138+
"compose-ui-tooling",
139+
"compose-ui-test-manifest"
140+
]
141+
142+
coroutine = [
143+
"kotlinx-coroutines-android",
144+
"kotlinx-coroutines-core"
145+
]
146+
147+
okhttp = [
148+
"okhttp",
149+
"okhttp-logging-interceptor"
150+
]
151+
152+
retrofit = [
153+
"retrofit",
154+
"retrofit-kotlin-serialization-converter"
155+
]
156+
157+
orbit = [
158+
"orbit-core",
159+
"orbit-compose",
160+
"orbit-viewmodel"
161+
]
28162

29163
[plugins]
30164
android-application = { id = "com.android.application", version.ref = "androidGradlePlugin" }
165+
android-library = { id = "com.android.library", version.ref = "androidGradlePlugin" }
31166
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
32-
kotlin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
33-
ktlint-gradle = { id = "org.jlleitschuh.gradle.ktlint", version.ref = "ktlint" }
167+
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
168+
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
169+
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
170+
ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
171+
hilt = { id = "com.google.dagger.hilt.android", version.ref = "hilt" }
172+
ktlint = { id = "org.jlleitschuh.gradle.ktlint", version.ref = "ktlint" }
34173

0 commit comments

Comments
 (0)