CodeDemo Clean architecture - piyushgupta77/codedemo GitHub Wiki
Welcome to the codedemo project
This project is based on MVP clean architecture alternatively called MVP onion architecture. You can read more about this at https://github.com/android10/Android-CleanArchitecture
This is a simple app when started makes a API call to download data from a API and store it in SQLite database using Room library. This app works seamlessly for offline viewing of data. It is based on reactive programming approach and uses RxJava for same. JUnit test cases are added for respective functionalities and ensure 100% coverage of business logic.
3rd party libraries used :
- Dagger for dependency injection
- RxJava for following reactive programming approach
- Rxlifecycle2 for managing Rx observables with Android activity lifecycle
- Room for database handling
- Mockito to mock dependencies for unit testing
- OkHttp and retrofit to make network calls
- Moshi for JSON data parsing
Future work
- Adding Espresso tests
- Coverage report filtering
- Adding CI pipeline