Shehab-Alaa / GoogleBooks_MVI_Kotlin

This repository contains a simple app to hit Sport-Category Google-Books API and show a list of books, that shows book details when items on the list are tapped, also user is able to add books to his favorite list that implements MVI architecture using Hilt, Retrofit, RxJava, RoomDatabase, DataBinding and Navigation Component.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GoogleBooks_MVI_Kotlin (Clean_Architecture)

This repository contains a simple app to hit Sport-Category Google-Books API and show a list of books, that shows book details when items on the list are tapped, also user is able to add books to his favorite list that implements MVI architecture using Hilt, Retrofit, RxJava, RoomDatabase, DataBinding and Navigation Component Applying Clean Code using OOP and SOLID Priciples.

Animation Part

Using Facebook ShimmerLayout Animation , Shared Element Transition and RecyclerView-Item Animation

117337536_220681359266294_4070239216491888377_n

The app has following packages:

  1. data: It contains all the data accessing and manipulating components.
  2. di: Dependency providing classes using Hilt.
  3. view: View classes along with their corresponding Presenters.
  4. intent: Intent Classes for dealing with view interactions.
  5. utils: Utility classes.

Navigation Component Graph

Screenshot (1)

Guide to app architecture

mvi_cyclic-49d9f8c2d3fe26b7

About

This repository contains a simple app to hit Sport-Category Google-Books API and show a list of books, that shows book details when items on the list are tapped, also user is able to add books to his favorite list that implements MVI architecture using Hilt, Retrofit, RxJava, RoomDatabase, DataBinding and Navigation Component.


Languages

Language:Kotlin 100.0%