{"repo":"EranBoudjnah/CleanArchitectureForAndroid","free":true,"listed":false,"github":"https://github.com/EranBoudjnah/CleanArchitectureForAndroid","clone":"git clone https://github.com/EranBoudjnah/CleanArchitectureForAndroid.git","description":"Clean Architecture for Android - a sample project","language":"Kotlin","stars":838,"topics":["android","android-testing","clean-architecture","hilt-android","jetpack-compose","kotlin-android","multi-module-project","mvvm","clean-architecture-android","multimodule-android-app"],"license":"MIT","category":"mobile-apps","readme_excerpt":"Clean Architecture for Android Sample Project This project is a loose implementation of Clean Architecture as presented in my book, Clean Architecture for Android. It is a native Android project written in Kotlin. It demonstrates the key principles presented in the book and how they apply to a real life project. I will endeavour to keep this project up to date and use it to demonstrate the strengths of the architecture: scalability , testability and flexibility when it comes to choosing 3rd party solutions. Features - Feature separation - Layer separation - UI - Presentation - Domain - Data - Data Source - Dummy analytics - Navigation - Animations - Unit tests - End-to-end tests - Demonstrates use of Jetpack Compose - Demonstrates use of Coroutines including Flow - Demonstrates MVVM - Code quality checks using ktlint - Code quality checks using detekt - Architecture consistency checks using konsist - Continuous integration (CI) using GitHub Actions - Unit tests - Instrumentation tests - Linting Choices - Simplicity \" The complexity introduced here is an overkill! \" I agree. If this was to be a final project, to which no new functionality would ever be added, then Clean Architecture would have been overly complicated for it. However, the reality is that mobile project seldom are final. User feedback, marketing requirements, new technologies - these factors and others all lead to continuous changes to almost every project. And so, what may now seem like too much complexity will","default_branch":null,"files":null,"tree":[],"storefront":"/r/EranBoudjnah","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/EranBoudjnah/CleanArchitectureForAndroid/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}