Used The New York Times Books API , Model View Presenter Architecture (MVP) Koin library for writing dependency injection Room Persistence Library RxJava/RxAndroid Retrofit 2 Mockito and Espresso for writing tests