plugins { id 'com.android.application' id 'org.jetbrains.kotlin.android' id 'kotlin-android' } def composeCompilerVersion = "1.4.7" android { compileSdkVersion 33 defaultConfig { applicationId "com.owenlejeune.tvtime" minSdkVersion 23 targetSdkVersion 33 versionCode = 1 versionName = "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { useSupportLibrary true } buildConfigField("String", "TMDB_ApiKey", TMDB_ApiKey) buildConfigField("String", "TMDB_Api_v4Key", TMDB_Api_v4Key) } buildFeatures { buildConfig = true } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' signingConfig signingConfigs.debug } } compileOptions { sourceCompatibility JavaVersion.VERSION_11 targetCompatibility JavaVersion.VERSION_11 } kotlinOptions { jvmTarget = '11' } buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion composeCompilerVersion } packagingOptions { resources { excludes += '/META-INF/{AL2.0,LGPL2.1}' } } namespace 'com.owenlejeune.tvtime' } dependencies { // ktx def ktx_core = "1.10.1" def ktx_paging = "3.1.1" implementation "androidx.core:core-ktx:$ktx_core" implementation "androidx.paging:paging-common-ktx:$ktx_paging" // android x def androidx = "1.1.0" implementation "androidx.window:window:$androidx" // material def material = "1.9.0" implementation "com.google.android.material:material:$material" // compose def compose = "1.2.0-beta03" def compose_material3 = "1.2.0-alpha02" def compose_accompanist = "0.28.0" def compose_navigation = "2.7.0-beta01" def compose_paging = "3.2.0-beta01" def compose_constraint_layout = "1.0.1" def compose_activity = "1.7.2" implementation "androidx.compose.ui:ui:$compose" implementation "androidx.compose.material3:material3:$compose_material3" implementation "androidx.compose.material:material:$compose" implementation "androidx.compose.material:material-icons-extended:$compose" implementation "androidx.compose.ui:ui-tooling-preview:$compose" implementation "androidx.activity:activity-compose:$compose_activity" implementation "com.google.accompanist:accompanist-systemuicontroller:$compose_accompanist" implementation "com.google.accompanist:accompanist-pager:$compose_accompanist" implementation "com.google.accompanist:accompanist-pager-indicators:$compose_accompanist" implementation "com.google.accompanist:accompanist-flowlayout:$compose_accompanist" implementation "androidx.navigation:navigation-compose:$compose_navigation" implementation "androidx.paging:paging-compose:$compose_paging" implementation "androidx.constraintlayout:constraintlayout-compose:$compose_constraint_layout" implementation "com.google.accompanist:accompanist-webview:$compose_accompanist" // material you def monet_compat = "0.4.1" implementation "com.github.KieronQuinn:MonetCompat:$monet_compat" // lifecycle def lifecycle_runtime = "2.4.1" implementation "androidx.lifecycle:lifecycle-runtime-ktx:$lifecycle_runtime" // retrofit def retrofit = "2.9.0" def stetho = "1.6.0" def gson = "2.10.1" def profiler = "1.0.8" implementation "com.squareup.retrofit2:retrofit:$retrofit" implementation "com.squareup.retrofit2:converter-gson:$retrofit" implementation "com.google.code.gson:gson:$gson" implementation "com.facebook.stetho:stetho:$stetho" implementation "com.facebook.stetho:stetho-okhttp3:$stetho" implementation "com.localebro:okhttpprofiler:$profiler" // koin def koin = "3.3.0" implementation "io.insert-koin:koin-android:$koin" implementation "io.insert-koin:koin-androidx-compose:$koin" // coil def coil = "2.2.2" implementation "io.coil-kt:coil-compose:$coil" //Coroutines def coroutines = "1.6.1" implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutines" // youtube player // def player_core = "11.0.1" // def chromecast_sender = "0.26" // implementation "com.pierfrancescosoffritti.androidyoutubeplayer:core:$player_core" // implementation "com.pierfrancescosoffritti.androidyoutubeplayer:chromecast-sender:$chromecast_sender" // markdown def markdown = "0.2.1" implementation "org.jetbrains:markdown:$markdown" def revealSwipe = "1.0.0" implementation "de.charlex.compose:revealswipe:$revealSwipe" def compose_markdown = "0.3.3" implementation "com.github.jeziellago:compose-markdown:$compose_markdown" def cloudy = "0.1.2" implementation "com.github.skydoves:cloudy:$cloudy" // testing def junit = "4.13.2" def androidx_junit = "1.1.3" def espresso_core = "3.5.1" testImplementation "junit:junit:$junit" androidTestImplementation "androidx.test.ext:junit:$androidx_junit" androidTestImplementation "androidx.test.espresso:espresso-core:$espresso_core" androidTestImplementation "androidx.compose.ui:ui-test-junit4:$compose" debugImplementation "androidx.compose.ui:ui-tooling:$compose" }