This Android app is developed using Kotlin language, following recomended architecture explained at: https://developer.android.com/jetpack/docs/guide
Similar to this diagram:
Android Paging Library is integrated to lazy load data by pages. Paging library work by coordinating the interactions between components as explained in this diagram:
- .data: manipulates data
- .db: implements database operations
- .dto: Data objects and entites
- .paging: Load data from API using Pagination
- .di: provides dependencies
- .view: displays data (Activities, View holder and Adapter)
- .adapter: implements View holder and Adapter for recyclerview
- .viewmodel: View model
- Android Support Library
- Android Data Binding
- Android Architecture Components
- RxJava
- Dagger 2 for dependency injection
- Retrofit for REST api communication
- Picasso for image loading
- Google Maps