An example approach for Android Application modularization and Reactive Clean architecture.
This repository is created to demonstrate how to implement modular android application and reactive clean architecture. In Base directory, there are four modules:
- core
- core_presentation
- core_domain
- core_data
Core module contains classes which can be used in every layer such as injection annotations, injection scopes, error factories, data holder models. Core presentation, includes core module and classes which can be used in other features presentation modules such as base ui classes, generic RecyclerView Adapter, ViewModel factories etc. Core data inclues core module and domain spesific interfaces such as Interactors. Core Data also includes core module, data source interfaces, default request interceptors and api module.
All features is implemented as 3 modules which are seperated by their scope.
- feature_presentation
- feature_domain
- feature_data
- Kotlin
- MVVM
- Clean Architecture
- Repository Pattern
- RxJava
- Dagger2
- Retrofit
- Modularization
- Kotlin DSL