diff --git a/DBTApp/.idea/deploymentTargetSelector.xml b/DBTApp/.idea/deploymentTargetSelector.xml
index 812b017..02663a9 100644
--- a/DBTApp/.idea/deploymentTargetSelector.xml
+++ b/DBTApp/.idea/deploymentTargetSelector.xml
@@ -8,6 +8,9 @@
+
+
+
\ No newline at end of file
diff --git a/DBTApp/app/build.gradle.kts b/DBTApp/app/build.gradle.kts
index e02b40e..c0f101f 100644
--- a/DBTApp/app/build.gradle.kts
+++ b/DBTApp/app/build.gradle.kts
@@ -1,6 +1,7 @@
plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.kotlin.android)
+ alias(libs.plugins.compose.compiler)
}
android {
@@ -35,17 +36,46 @@ android {
}
buildFeatures {
viewBinding = true
+ compose = true
}
}
dependencies {
+ val composeBom = platform("androidx.compose:compose-bom:2025.05.00")
+ implementation(composeBom)
+ androidTestImplementation(composeBom)
+
+ // Material Design 3
+ implementation(libs.material3)
+
+ // Android Studio Preview support
+ implementation(libs.androidx.ui.tooling.preview)
+ debugImplementation(libs.androidx.ui.tooling)
+
+ // UI Tests
+ androidTestImplementation(libs.androidx.ui.test.junit4)
+ debugImplementation(libs.androidx.ui.test.manifest)
+
+ // Optional - Included automatically by material, only add when you need
+ // the icons but not the material library (e.g. when using Material3 or a
+ // custom design system based on Foundation)
+ implementation(libs.androidx.material.icons.core)
+ // Optional - Add full set of material icons
+ implementation(libs.androidx.material.icons.extended)
+
+ // Optional - Integration with activities
+ implementation(libs.androidx.activity.compose)
+
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.appcompat)
implementation(libs.material)
implementation(libs.androidx.constraintlayout)
implementation(libs.androidx.navigation.fragment.ktx)
implementation(libs.androidx.navigation.ui.ktx)
+ implementation(libs.androidx.runtime.android)
+ implementation(libs.androidx.ui.tooling.preview.android)
+ implementation(libs.androidx.material3.android)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
androidTestImplementation(libs.androidx.espresso.core)
diff --git a/DBTApp/build.gradle.kts b/DBTApp/build.gradle.kts
index 922f551..b2c8728 100644
--- a/DBTApp/build.gradle.kts
+++ b/DBTApp/build.gradle.kts
@@ -2,4 +2,5 @@
plugins {
alias(libs.plugins.android.application) apply false
alias(libs.plugins.kotlin.android) apply false
+ alias(libs.plugins.compose.compiler) apply false
}
\ No newline at end of file
diff --git a/DBTApp/gradle/libs.versions.toml b/DBTApp/gradle/libs.versions.toml
index 050284e..aec03ea 100644
--- a/DBTApp/gradle/libs.versions.toml
+++ b/DBTApp/gradle/libs.versions.toml
@@ -1,4 +1,5 @@
[versions]
+activityCompose = "1.10.1"
agp = "8.9.2"
kotlin = "2.0.21"
coreKtx = "1.10.1"
@@ -10,9 +11,21 @@ material = "1.10.0"
constraintlayout = "2.1.4"
navigationFragmentKtx = "2.6.0"
navigationUiKtx = "2.6.0"
+runtimeAndroid = "1.8.1"
+uiToolingPreviewAndroid = "1.8.1"
+material3Android = "1.3.2"
[libraries]
+androidx-activity-compose = { module = "androidx.activity:activity-compose", version.ref = "activityCompose" }
+androidx-adaptive = { module = "androidx.compose.material3.adaptive:adaptive" }
androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" }
+androidx-material-icons-core = { module = "androidx.compose.material:material-icons-core" }
+androidx-material-icons-extended = { module = "androidx.compose.material:material-icons-extended" }
+androidx-material3 = { module = "androidx.compose.material3:material3" }
+androidx-ui-test-junit4 = { module = "androidx.compose.ui:ui-test-junit4" }
+androidx-ui-test-manifest = { module = "androidx.compose.ui:ui-test-manifest" }
+androidx-ui-tooling = { module = "androidx.compose.ui:ui-tooling" }
+androidx-ui-tooling-preview = { module = "androidx.compose.ui:ui-tooling-preview" }
junit = { group = "junit", name = "junit", version.ref = "junit" }
androidx-junit = { group = "androidx.test.ext", name = "junit", version.ref = "junitVersion" }
androidx-espresso-core = { group = "androidx.test.espresso", name = "espresso-core", version.ref = "espressoCore" }
@@ -21,8 +34,12 @@ material = { group = "com.google.android.material", name = "material", version =
androidx-constraintlayout = { group = "androidx.constraintlayout", name = "constraintlayout", version.ref = "constraintlayout" }
androidx-navigation-fragment-ktx = { group = "androidx.navigation", name = "navigation-fragment-ktx", version.ref = "navigationFragmentKtx" }
androidx-navigation-ui-ktx = { group = "androidx.navigation", name = "navigation-ui-ktx", version.ref = "navigationUiKtx" }
+androidx-runtime-android = { group = "androidx.compose.runtime", name = "runtime-android", version.ref = "runtimeAndroid" }
+androidx-ui-tooling-preview-android = { group = "androidx.compose.ui", name = "ui-tooling-preview-android", version.ref = "uiToolingPreviewAndroid" }
+androidx-material3-android = { group = "androidx.compose.material3", name = "material3-android", version.ref = "material3Android" }
+material3 = { module = "androidx.compose.material3:material3" }
[plugins]
android-application = { id = "com.android.application", version.ref = "agp" }
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
-
+compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }