It is a library for implementing Clean Architecture Design to your project. It contains base structures to implement in your project. It has data, domain and presentation layer structures. They can be implemented module by module. In this project a demo app is included to show how these structures are used.
A detailed usage is explained at babagilalperen.medium.com
Add it in your root build.gradle at the end of repositories:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
Then add these to desired module:
implementation "com.github.alperenbabagil.cleanappbase:cabdata:$cabVersion"
implementation "com.github.alperenbabagil.cleanappbase:cabdomain:$cabVersion"
implementation "com.github.alperenbabagil.cleanappbase:cabpresentation:$cabVersion"
There is another module that contains a DataHolder structure for carrying data. It is provided by cabdomain module but you can implement seperately if you want:
implementation "com.github.alperenbabagil.cleanappbase:dataholder:$cabVersion"
There is the demo app screen record: