This App is written in kotlin following the Architecture Components](https://developer.android.com/arch)
- Foundation - Components for core system capabilities, Kotlin extensions and support for
multidex and automated testing.
- AppCompat - Degrade gracefully on older versions of Android.
- Android KTX - Write more concise, idiomatic Kotlin code.
- Test - An Android testing framework for unit and runtime UI tests.
- Architecture - A collection of libraries that help you design robust, testable, and
maintainable apps. Start with classes for managing your UI component lifecycle and handling data
persistence.
- Data Binding - Declaratively bind observable data to UI elements.
- Lifecycles - Create a UI that automatically responds to lifecycle events.
- LiveData - Build data objects that notify views when the underlying database changes.
- Navigation - Handle everything needed for in-app navigation.
- ViewModel - Store UI-related data that isn't destroyed on app rotations. Easily schedule asynchronous tasks for optimal execution.
- UI - Details on why and how to use UI Components in your apps - together or separate
- Third party
- Glide for image loading
- Kotlin Coroutines for managing background threads with simplified code and reducing needs for callbacks
- Dagger2 for dependency injection
- Retrofit for Http Calls
Run the below commands it will build the project and install the app make sure you have an android device connected and working environment
chmod +x buildAndInstall.sh
./buildAndInstall.sh
The test cases can be found under the source folder
src/test/java src/androidTest
Right click on each class and select run test