dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')

    implementation 'androidx.core:core-ktx:1.12.0'
    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-rx3:1.7.3'

    // Support Libraries
    implementation 'com.google.android.material:material:1.11.0'
    implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
    implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
    implementation 'androidx.appcompat:appcompat:1.6.1'
    implementation 'androidx.recyclerview:recyclerview:1.3.2'
    implementation 'androidx.cardview:cardview:1.0.0'

    // Room
    def room_version = "2.5.2"
    implementation "androidx.room:room-runtime:$room_version"
    implementation "androidx.room:room-rxjava3:$room_version"
    implementation "androidx.room:room-ktx:$room_version"
    ksp "androidx.room:room-compiler:$room_version"

    // Lifecycle - ViewModel and LiveData
    def lifecycle_version = "2.7.0"
    implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
    implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version"
    implementation "androidx.lifecycle:lifecycle-viewmodel-savedstate:$lifecycle_version"
    implementation "androidx.lifecycle:lifecycle-process:$lifecycle_version"
    implementation "androidx.lifecycle:lifecycle-common-java8:$lifecycle_version"

    // Navigation
    implementation 'androidx.navigation:navigation-fragment-ktx:2.7.6'

    // Firebase
    implementation platform('com.google.firebase:firebase-bom:32.7.0')
    implementation 'com.google.firebase:firebase-messaging'
    implementation 'com.google.firebase:firebase-storage'

    // Google Phone Number Utils
    implementation 'com.googlecode.libphonenumber:libphonenumber:8.13.19'

    // Loading images from urls
    def glide_version = '4.16.0'
    implementation "com.github.bumptech.glide:glide:$glide_version"
    ksp "com.github.bumptech.glide:ksp:$glide_version"

    // Beacon Scans
    implementation 'org.altbeacon:android-beacon-library:2.19.6'

    // Geofencing/Geolocation
    implementation "com.google.android.gms:play-services-location:21.1.0"
    implementation "com.google.android.gms:play-services-maps:18.2.0"
    implementation 'com.google.maps.android:android-maps-utils:3.5.3'

    // RxJava
    implementation 'io.reactivex.rxjava3:rxandroid:3.0.2'
    implementation 'io.reactivex.rxjava3:rxjava:3.1.7'

    // Networking
    def retrofit_version = "2.9.0"
    implementation "com.squareup.retrofit2:retrofit:$retrofit_version"
    implementation "com.squareup.retrofit2:converter-gson:$retrofit_version"
    implementation "com.squareup.retrofit2:adapter-rxjava3:$retrofit_version"
    implementation 'com.squareup.okhttp3:okhttp:4.12.0'
    implementation 'com.google.code.gson:gson:2.10.1'

    // Background Jobs
    def work_version = "2.9.0"
    implementation "androidx.work:work-runtime-ktx:$work_version"
    implementation "androidx.work:work-runtime:$work_version"
    implementation "androidx.work:work-rxjava3:$work_version"
    implementation "androidx.work:work-gcm:$work_version"

    // Dagger 2
    def dagger_version = '2.48.1'
    implementation "com.google.dagger:dagger:$dagger_version"
    ksp "com.google.dagger:dagger-compiler:$dagger_version"

    // Debugging
    implementation 'com.jakewharton.timber:timber:5.0.1'
    implementation 'com.squareup.okhttp3:logging-interceptor:4.12.0'
    implementation 'com.github.chuckerteam.chucker:library:4.0.0'
  }