android-clean-architecture

Structure Android and Kotlin Multiplatform projects into domain, data, and presentation layers.

1|Updated Mar 12, 2026
One-click install
npx skills add https://github.com/XiaoPuOuO/VFactory --skill android-clean-architecture-xiaopuouo
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: android-clean-architecture
Source: https://github.com/XiaoPuOuO/VFactory/tree/main/paperclip-official/AgentSetting/skills/android-clean-architecture
Command: npx skills add https://github.com/XiaoPuOuO/VFactory --skill android-clean-architecture-xiaopuouo

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Clean Architecture patterns for Android and Kotlin Multiplatform projects enable teams to structure modules, enforce dependency rules, and provide clear UseCase/Repository/data-layer patterns to improve testability and maintainability.

Core Features & Use Cases

  • Module boundaries and dependency inversion to separate concerns across app, data, domain, and presentation.
  • UseCase and Repository patterns with dedicated domain models, data mappings, and DI wiring for Koin or Hilt.
  • Data layer design with Room, SQLDelight, and Ktor for local and remote data access, plus clear guidelines for testing.

Quick Start

Start by organizing your Android or Kotlin Multiplatform project into domain, data, and presentation layers following the documented module layout and dependency rules.

Frequently Asked Questions about android-clean-architecture

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure an Android project with clean architecture layers?

Apply clean architecture by organizing Android codebases into distinct domain, data, and presentation layers. This enforces strict module boundaries and dependency inversion to separate concerns and improve maintainability.

What is the best way to implement UseCases and Repositories in Kotlin Multiplatform?

Implement UseCases and Repositories in Kotlin Multiplatform by establishing dedicated domain models and data mappings. This isolates business logic from data sources, ensuring strict modular boundaries and testability.

Does this clean architecture approach support dependency injection with Koin or Hilt?

Yes, this clean architecture approach supports dependency injection with Koin or Hilt. It provides specific DI wiring guidance to connect UseCases, Repositories, and data layer components across domain and presentation layers.

How do I design the data layer in Android clean architecture using Room and Ktor?

Design the data layer in Android clean architecture using Room, SQLDelight, and Ktor for local and remote data access. This provides clear data mapping guidelines and ensures modular boundaries for the data layer.

When do I need clean architecture for my Android or KMP apps?

You need clean architecture for Android or KMP apps when teams require strict module boundaries, clear UseCase and Repository patterns, and improved testability. It solves the problem of tangled dependencies and unmaintainable code.