android-clean-architecture

Architect Android apps with clean architecture module boundaries and dependency rules.

12|Updated Mar 22, 2026
One-click install
npx skills add https://github.com/aurorie-co/AURORIE-TEAMS --skill android-clean-architecture-aurorie-co
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: android-clean-architecture
Source: https://github.com/aurorie-co/AURORIE-TEAMS/tree/main/teams/mobile/skills/android-clean-architecture
Command: npx skills add https://github.com/aurorie-co/AURORIE-TEAMS --skill android-clean-architecture-aurorie-co

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Clean architecture guidance for Android and Kotlin Multiplatform projects to enforce modular boundaries, clear data flow, and maintainable code organization.

Core Features & Use Cases

  • Module layout guidance for app, core, domain, data, presentation, and feature modules.
  • Dependency rules ensuring domain remains pure and independent from data/presentation layers.
  • Pattern examples including UseCases, Repositories, DataSources, and DI configurations (Koin or Hilt) with common data layer patterns like Room, SQLDelight, and Ktor.
  • Use Case Scenarios: structuring a typical app: login flow, data synchronization, and offline support via a clean domain-layer.

Quick Start

Set up a modular Android project following the recommended module layout and implement UseCases and Repositories with clean architecture boundaries.

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 using clean architecture?

Structure an Android app using clean architecture by dividing it into app, core, domain, data, and presentation modules. This approach enforces module boundaries, ensures domain purity, and maintains clear data flow across UseCase and Repository patterns.

What are the dependency rules for a pure domain layer in Kotlin Multiplatform?

Dependency rules for a pure domain layer require it to remain completely independent from the data and presentation layers. This separation ensures domain purity, keeping business logic isolated from data sources like Room or SQLDelight.

Can I use Koin or Hilt for dependency injection in a modular Android project?

You can use either Koin or Hilt for dependency injection in a modular Android project. The clean architecture pattern supports DI configurations for both frameworks to manage dependencies across feature and data layers.

How do I implement offline support and data synchronization with clean architecture?

Implement offline support and data synchronization by utilizing a clean domain layer with Repository and DataSource patterns. This setup manages local data via Room or SQLDelight and remote interactions via Ktor for seamless synchronization.

What is the best way to organize feature modules in an Android clean architecture project?

The best way to organize feature modules is to follow a strict module layout that isolates features while routing dependencies through core modules. This maintains clear separation of concerns and structured data flow.