This codebase was orignally created for saudi federation of cybersecurity programming and drones for an interview.
Its a random programing quotes application. It takes all sensitive information through gradle properties and then loads up in the class files after compiling it.
- If internet available, hits the API and save the response in shared preference
- If no internet available, shows data from shared preference. If that data is not present then shows place holder message.
- Clean Architecture (SOLID Principles, Seperation of concerns, Easy Testing)
- MVVM
- Retrofit2
- Kotlin
- Dagger2
- RxJava
- Online/ Offline and error handling Scenarios (Using Shared preference by storing json object in it)
- Separate module (networkSdk) for modularity purpose