What problem does it solve?
This Skill unit provides a comprehensive guide to implement Clean Architecture patterns in Android and Kotlin Multiplatform projects, ensuring modularity, testability, and maintainability.
Core Features & Use Cases
- Module Structure: Detailed guide on organizing modules (app, core, domain, data, presentation, design-system, feature) and their dependencies.
- Domain Layer: Instructions on creating UseCases, domain models, and repository interfaces with examples in Kotlin.
- Data Layer: Examples of repository implementations, data sources, databases (Room, SQLDelight), and network clients (Ktor).
- Dependency Injection: Demonstrations of setting up Koin and Hilt for dependency injection across different layers.
- Error Handling: Best practices for implementing error handling with Result and Try patterns.
- Gradle Plugins: Using convention plugins to simplify build configurations in Kotlin Multiplatform projects.
- Avoiding Anti-Patterns: Tips to avoid common architectural mistakes.
Quick Start
Use the android-clean-architecture skill to review the suggested module structure for a new Android or KMP project.