Music player app in Android using the MVVM architecture. This app will have a similar design as Spotify and it will also be designed in a way that is easily extendable with more features.
- ViewModel - Stores UI-related data that isn't destroyed on UI changes.
- LiveData - for reactive style programming (from VM to UI).
- Dagger-hilt - for dependency injection.
- Timber - for logging.
- Coroutines - A coroutine is a concurrency design pattern that you can use on Android to simplify code that executes asynchronously
- Glide - Glide is a fast and efficient image loading library for Android
- Firestore - Cloud Firestore is a cloud-hosted, NoSQL database that your iOS, Android
- Navigation component - To navigate between fragments
- ExoPlayer - ExoPlayer is an application level media player for Android