Android Architecture

Standards for Clean Architecture, Modularization, and Unidirectional Data Flow

fierzone Updated

File contents

Android Architecture Standards

Priority: P0

Implementation Guidelines

Layering (Clean Architecture)

  • Domain: Pure Kotlin (No Android deps). Contains UseCases/Models.
  • Data: Repository impl, DataSources (API/DB). Maps DTO -> Domain.
  • UI: ViewModel + Composable. Maps Domain -> UiState.

Modularization

  • Feature Modules: :feature:home, :feature:profile.
  • Core Modules: :core:ui (Design System), :core:network, :core:database.
  • App Module: DI Root and Navigation Guard.

Unidirectional Data Flow (UDF)

  • Events: UI -> ViewModel (Events).
  • State: ViewModel -> UI (StateFlow).

Anti-Patterns

  • God Activity: **No Logic in/Activity**: Host Navigation only.
  • Direct Repos: **No Repo in UI**: Use Type-Safe ViewModels.
  • Android in Domain: **No Context in Domain**: Keep Logic Pure.

References

  • Structure & Examples

fierzone/agent-skills-standard/tree/main/skills/android/architecture commit 7d500f2455

Frequently asked questions

npx skillmds@latest add fierzone/android-architecture