CoinTracker is a sample application getting data from Crypto Currency API - Coingecko via Retrofit and saving it locally via Room. Then it retrieves data from local database. Project is written in Kotlin by appling architecture pattern of MVVM. Dagger-Hilt is used for dependency injection..
- Minimum SDK level 21
 - Kotlin based, Coroutines + Flow for asynchronous.
 - Dagger-Hilt (alpha) for dependency injection.
 - JetPack
- LiveData - notify domain layer data to views.
 - Lifecycle - dispose of observing data when lifecycle state changes.
 - ViewModel - UI related data holder, lifecycle aware.
 - Room Persistence - construct a database using the abstract layer.
 - WorkManager - handle background operations
 
 - Architecture
- MVVM Architecture (View - DataBinding - ViewModel - Model)
 - Repository pattern
 
 - Retrofit2 & OkHttp3 - construct the REST APIs and paging network data.
 - Glide - loading images.
 
CoinTracker uses MVVM architecture and a repository pattern.
CoinTracker uses the Coin Gecko API for constructing RESTful API.
Coin Gecko API allows developers to access information about worldwide Crypto Coins.

