Brings all the happening events in your city at your finger tips :D
- Kotlin
- MVVM Architecture
- Live Data
- Rx
- Retrofit2 (with Logging interceptor)
- Glide
- Constraint Layout
- The app takes advantage of MVVM architecture with Kotlin being the primary language
- Activity, ViewModel, Repository, LiveData_ are the basic building blocks of this architecture
- All the UI related work like showing alert dialog, starting a new activity, showing the progress bar, etc is done in the Activity.
- Business logic is written in the ViewModel. Also the observable fields can be kept in the ViewModel which will be observed from the XML when we use data binding.
- All API calls, DB calls, File operation happen from within the repository.
- It's a 1 way reference flow from Activity -> View Model -> Repository. For ViewModel/Repository to communicate back in the chain we use live data which is observed by the activity.