🧐 A GitHub Search Android apps using Coroutine Flow, Dagger 2, MVVM, Modularization, Clean Architecture, Airbnb Epoxy, and Unit Test. There are 2 features on this apps:
- Search GitHub users by name.
- Get detail information of the user including Profile and Repository with load more features.
Note: You can also check the implementation Dagger 2 and RxJava in dagger2-rxjava branch (on going).
- Kotlin - built with 100% Kotlin.
- Coroutines Flow - emit multiple values sequentially (flatMap, zip, etc.)
- Jetpack Components
- Navigation
- ViewModel
- Material Components
- ViewBinding
- KTX
- Dagger 2 - dependency injection.
- Clean Architecture - separates code into layers.
- Modularization - separating logical components of project into discrete modules.
- Epoxy - library for building complex screens in a RecyclerView.
- Retrofit2 - REST APIs.
- Moshi - modern JSON library.
- Glide - load images.
- Timber - logger.
- Chucker - an HTTP inspector.
- MockK - mocking unit testing.
This apps uses Clean Architecture to separate code into layers (Data - Domain - Presentation).