- Followed modern android application guidelines from google.
**Architecture component libraries **
- Room - The Room persistence library provides an abstraction layer over SQLite to allow for more robust database access while harnessing the full power of SQLite.
- Viewmodel - The ViewModel class is designed to store and manage UI-related data in a lifecycle conscious way
- LiveData - Handle data in a lifecycle-aware fashion.
- Navigation
** Third party libraries **
- Retrofit - Retrofit is an awesome type-safe HTTP client for Android.
- Gson - A Java serialization/deserialization library to convert Java Objects into JSON and back.
- Coil - Image loading for Android backed by Kotlin Coroutines.
- Dagger - A fast dependency injector for Android and Java. timber, and other co-routine extensions.