MVVM
It is the architecture that keeps the presentational and business logic separate and makie our app clean and testable.
ViewModel
It is the interface that bridges the gap between view and model.
LiveData
It is the lifecycle aware dataholder that can trigger UI changes whenever the data wrapped in it changes.