This project represents useage of ViewModel and Data Binding in Recyclerview. Data is fetched via Retrofit then Parsed, Saved in Room DB and Displayed at the same time. The databases can be further normalised. We can also use pagination library to add paging support
There are many benefits of using ViewModel archietecture like Less code in Activity classes , Easy unit testing and the biggest one that AndroidViewModel is lifecycle aware and it keeps data while rotation of activities so we do'nt have to manage the biloperate code.