Android Kotlin Clean Architecture & Components
Structure
Configs Android Studio Setting or codestyles
Copy "AndroidStudio" folde or "AndroidStudio/codestyles"
On linux:
/home/username/.AndroidStudio*
or
/home/username/AndroidStudio*
On Windows:
C:\Users\JohnDoe\.AndroidStudio*
or
C:\Users\JohnDoe\AndroidStudio*
On MacOS:
~/Library/Preferences/.AndroidStudio*
or
~/Library/Preferences/AndroidStudio*
Clean Architect Components template
Template supporterSupport generate files such as: Fragment, Navigator, ViewModel, layout, Local Unit Test
Domain Layer
Data Layer
Presentation Layer
Architecture
MVVM
Domain layer Tests
UseCase Tests
Data Layer Unit Tests
Model Mapper Tests
Repository Tests
Webservice Tests
The project uses MockWebServer project to test REST api interactions.
Presentation layer Tests
ViewModel Tests
Model Mapper Tests
Libraries
- Android Support Library
- Android Architecture Components
- Android Data Binding
- Koin for dependency injection
- Rx Android 2 for reactive extensions for Android
- Rx Java 2 for reactive extensions for the JVM
- Retrofit for REST api communication
- Glide for image loading
- Timber for logging
- espresso for UI tests
- mockito for mocking in tests