What problem does it solve?
Android projects often struggle with scalable, testable code organization as teams grow. This Skill provides a blueprint for structuring Android and Kotlin Multiplatform projects using clean architecture: clear module boundaries, dependency inversion between domain and data layers, and consistent data flow across layers.
Core Features & Use Cases
- Module structure guidance: recommended layout separating app, core, domain, data, presentation, and platform-specific features.
- Dependency rules: enforce inversion of control so domain logic remains platform-agnostic and free of frameworks.
- UseCase/Repository patterns: define clean interactions between business logic and data sources for testability and maintainability.
- Data layer patterns: guidance on Room, SQLDelight, Ktor, and DI integration in modular setups.
- Concrete use-case example: implement a UseCase to fetch and map domain models from a repository and present to UI.
Quick Start
Set up a modular Android project with domain, data, and presentation layers, wiring UseCases to Repositories and injecting dependencies via your preferred DI framework.