android-clean-architecture

Define Android clean-architecture modules, dependencies, and data/domain/presentation layers.

Updated Mar 21, 2026
One-click install
npx skills add https://github.com/hieuck/Pro5ChromeManager --skill android-clean-architecture-hieuck
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: android-clean-architecture
Source: https://github.com/hieuck/Pro5ChromeManager/tree/main/skills/android-clean-architecture
Command: npx skills add https://github.com/hieuck/Pro5ChromeManager --skill android-clean-architecture-hieuck

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This guide helps Android teams implement clean architecture by clearly separating concerns into domain, data, and presentation layers, improving testability and maintainability.

Core Features & Use Cases

  • Defines module boundaries and dependency rules to prevent cyclic dependencies.
  • Provides patterns for UseCases, Repositories, and data layer integrations (Room, SQLDelight, Ktor) in Android and Kotlin Multiplatform projects.
  • Offers guidance on dependency injection (Koin or Hilt) and a scalable project layout for large apps.

Quick Start

Create a new Android project and apply the recommended module layout, dependencies, and DI patterns to start building with clean architecture.

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 app with clean architecture and clear module boundaries?

Android clean architecture separates concerns into domain, data, and presentation layers to improve testability. It defines strict module boundaries and dependency rules to prevent cyclic dependencies in large projects.

What is the best way to implement dependency injection with Kotlin in a modular Android architecture?

Dependency injection in a modular Android architecture is implemented using Koin or Hilt. This guide provides specific DI patterns to manage dependencies across distinct module layers without creating tight coupling.

How do UseCases and Repositories fit into the data and domain layers of an Android app?

UseCases and Repositories orchestrate data flow within the domain and data layers. Repositories handle data integrations from sources like Room or Ktor, while UseCases encapsulate single business logic operations for the presentation layer.

Can I apply this clean architecture blueprint to Kotlin Multiplatform projects using SQLDelight?

Yes, this clean architecture blueprint supports Kotlin Multiplatform projects. It provides specific patterns for data layer integrations using SQLDelight and Ktor to share business logic across platforms.

Why use a modular clean architecture for large Android apps instead of a standard MVVM setup?

A modular clean architecture improves maintainability and testability over a standard MVVM setup by enforcing clear separation of concerns. It prevents cyclic dependencies and provides a scalable project layout specifically designed for large apps.