architecture

Guide Android app architecture with three-layer separation and Hilt DI.

127|8|Updated Apr 6, 2026
One-click install
npx skills add https://github.com/hanamizuki/solopreneur --skill architecture-hanamizuki
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: architecture
Source: https://github.com/hanamizuki/solopreneur/tree/main/plugins/android-dev/skills/architecture
Command: npx skills add https://github.com/hanamizuki/solopreneur --skill architecture-hanamizuki

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Guides developers on designing Android apps with a clean, scalable architecture and proper DI patterns, reducing maintenance overhead and onboarding time.

Core Features & Use Cases

  • Enforces a three-layer architecture (UI, Domain, Data) with inward dependencies.
  • Promotes Hilt-based dependency injection and modularization strategy.
  • Provides a recommended module layout for large apps and concrete rules for dependencies and testing.
  • Use Case: When starting a new Android project, structure modules and DI to facilitate independent testing and feature growth.

Quick Start

Follow the guidelines to scaffold a new Android project with UI, Domain, and Data layers and annotate Application with @HiltAndroidApp.

Frequently Asked Questions about 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 Hilt?

Structure your Android app by enforcing a three-layer architecture (UI, Domain, Data) with inward dependencies and using @HiltAndroidApp for Hilt-based dependency injection. This enforces clear module boundaries and facilitates independent testing for feature growth.

What is the best way to modularize a large Android project?

The best way to modularize a large Android project is by following a recommended module layout that enforces clear boundaries between UI, domain, and data layers. This strategy reduces maintenance overhead and onboarding time while supporting feature growth.

When do I need a three-layer architecture for my Android app?

You need a three-layer architecture when starting a new Android project or scaling an existing one to facilitate independent testing and feature growth. Separating UI, domain, and data layers with inward dependencies ensures a clean, scalable structure and reduces maintenance overhead.

Does Hilt dependency injection work well with clean architecture layer separation?

Hilt dependency injection works well with clean architecture by providing concrete DI strategies across UI, domain, and data layers. Annotating the Application class with @HiltAndroidApp sets up the DI graph to respect clear module boundaries and inward dependencies.

Can I use this Android modularization strategy for projects of varying sizes?

Yes, this modularization strategy applies to Android projects of varying sizes. It provides a recommended module layout for large apps and concrete rules for dependencies and testing, ensuring a clean, scalable architecture that reduces maintenance overhead.