Skip to content

Commit

Permalink
Merge pull request #239 from TheCodeMonks/Refactor-app
Browse files Browse the repository at this point in the history
Migrate from `groovy` to `kts` #182
  • Loading branch information
Spikeysanju committed Nov 5, 2021
2 parents 26ae940 + b01839d commit 9fad0c7
Show file tree
Hide file tree
Showing 13 changed files with 270 additions and 205 deletions.
33 changes: 25 additions & 8 deletions .github/workflows/android_build.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
name: Android Build
name: Android CI

on:
push:
branches: [ master ]
pull_request:
branches: [ master ]

on: pull_request

jobs:
build:
Expand All @@ -10,14 +15,26 @@ jobs:
steps:
- uses: actions/checkout@v1

- name: Set Up JDK
- name: 🧱 Set Up JDK
uses: actions/setup-java@v1
with:
java-version: 1.8

java-version: 11

- name: Run Tests
- name: 🧪 Run Tests
run: ./gradlew test

- name: Build Project
run: ./gradlew assemble
- name: 🛠 Build Project with Spotless Check
run: ./gradlew spotlessCheck assemble lintDebug --stacktrace

- name: ⏳ Build with Gradle
run: ./gradlew build

- name: 🏗 Build APK
run: bash ./gradlew assembleDebug --stacktrace

- name: 🚀 Upload APK 📱
uses: actions/upload-artifact@v2
with:
name: app
path: app/build/outputs/apk/debug/app-debug.apk
retention-days: 3
20 changes: 0 additions & 20 deletions .github/workflows/lint.yml

This file was deleted.

17 changes: 17 additions & 0 deletions .idea/deploymentTargetDropDown.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

135 changes: 0 additions & 135 deletions app/build.gradle

This file was deleted.

140 changes: 140 additions & 0 deletions app/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
/*
*
* *
* * * MIT License
* * *
* * * Copyright (c) 2020 Spikey Sanju
* * *
* * * Permission is hereby granted, free of charge, to any person obtaining a copy
* * * of this software and associated documentation files (the "Software"), to deal
* * * in the Software without restriction, including without limitation the rights
* * * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* * * copies of the Software, and to permit persons to whom the Software is
* * * furnished to do so, subject to the following conditions:
* * *
* * * The above copyright notice and this permission notice shall be included in all
* * * copies or substantial portions of the Software.
* * *
* * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* * * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* * * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* * * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* * * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* * * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* * * SOFTWARE.
* *
*
*
*/

plugins {
id("com.android.application")
id("kotlin-android")
id("kotlin-kapt")
id("androidx.navigation.safeargs.kotlin")
id("dagger.hilt.android.plugin")
}

android {
compileSdk = 31
buildToolsVersion = "30.0.3"

defaultConfig {
applicationId = "thecodemonks.org.nottzapp"
minSdk = 21
targetSdk = 31
versionCode = 1
versionName = "1.4.0"

testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables {
useSupportLibrary = true
}
}

lint {
checkReleaseBuilds = false
abortOnError = true
}

buildFeatures {
viewBinding = true
}

buildTypes {
release {
isMinifyEnabled = true
isShrinkResources = true
proguardFiles(
getDefaultProguardFile("proguard-android.txt"),
"proguard-rules.pro"
)
}
}

compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}

kotlinOptions {
jvmTarget = "11"
}
}

dependencies {
implementation("org.jetbrains.kotlin:kotlin-stdlib:1.5.31")
implementation("androidx.core:core-ktx:1.7.0")
implementation("androidx.appcompat:appcompat:1.3.1")
implementation("com.google.android.material:material:1.4.0")
implementation("androidx.constraintlayout:constraintlayout:2.1.1")
implementation("androidx.legacy:legacy-support-v4:1.0.0")
testImplementation("junit:junit:4.13.2")
androidTestImplementation("androidx.test.ext:junit:1.1.3")
androidTestImplementation("androidx.test.espresso:espresso-core:3.4.0")

// Architectural Components
implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1")

// Room
implementation("androidx.room:room-runtime:2.3.0")
kapt("androidx.room:room-compiler:2.3.0")
kapt("org.xerial:sqlite-jdbc:3.36.0.3")

// Kotlin Extensions and Coroutines support for Room
implementation("androidx.room:room-ktx:2.3.0")

// Coroutines
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.2")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.2-native-mt")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-play-services:1.5.2-native-mt")

// Coroutine Lifecycle Scopes
implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1")
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.3.1")
implementation("androidx.lifecycle:lifecycle-livedata-ktx:2.3.1")

// activity & fragment ktx
implementation("androidx.fragment:fragment-ktx:1.3.6")
implementation("androidx.activity:activity-ktx:1.4.0-rc01")
implementation("androidx.appcompat:appcompat:1.4.0-beta01")

// Navigation Components
implementation("androidx.navigation:navigation-fragment-ktx:2.3.5")
implementation("androidx.navigation:navigation-ui-ktx:2.3.5")

// material design
implementation("com.google.android.material:material:1.4.0")
implementation("androidx.recyclerview:recyclerview:1.2.1")

// Preference DataStore
implementation("androidx.datastore:datastore-preferences:1.0.0")

// Lottie Animation Library
implementation("com.airbnb.android:lottie:4.2.0")

// Hilt
implementation("com.google.dagger:hilt-android:2.39.1")
kapt("com.google.dagger:hilt-android-compiler:2.39.1")
kapt("androidx.hilt:hilt-compiler:1.0.0")
}
4 changes: 2 additions & 2 deletions app/proguard-rules.pro
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.
# proguardFiles setting in build.gradle.kts.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
Expand All @@ -18,4 +18,4 @@

# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
#-renamesourcefileattribute SourceFile
Loading

0 comments on commit 9fad0c7

Please sign in to comment.