layered-module-patterns

Official

Wire domain, data, and tasks the right way.

AuthorAniTrend
Version1.0.0
Installs0

System Documentation

What problem does it solve?

This Skill prevents module-architecture drift by helping you choose consistent layered wiring patterns across feature, common, data, domain, and task modules in AniTrend.

Core Features & Use Cases

  • Pattern selection for module wiring: Match query-only, hybrid query+mutation, mutation-only, and Android/platform support scenarios to the closest reference layout.
  • Domain vs data responsibilities: Enforce that contracts and abstract use cases stay in domain while repositories, sources, mappers, and Koin bindings stay in data.
  • Types.kt interactor alias discipline: Keep Types.kt lean so feature and task layers consume interactor aliases specialized with DataState<T>.
  • Offline-first guidance: Pick correct source-of-truth approaches for non-paged and paged flows (Room-backed observable flows, mapper ownership, and paging refresh coordination).
  • Safe import boundaries: Allow interactor alias imports into feature/task, but avoid importing repositories, sources, mappers, or remote models.

Quick Start

Use the layered-module-patterns skill to choose the closest existing module recipe for your planned media/review/favourite feature and align the domain-data-task boundaries with the standard wiring rules.

Dependency Matrix

Required Modules

None required

Components

Standard package

💻 Claude Code Installation

Recommended: Let Claude install automatically. Simply copy and paste the text below to Claude Code.

Please help me install this Skill:
Name: layered-module-patterns
Download link: https://github.com/AniTrend/anitrend-v2/archive/main.zip#layered-module-patterns

Please download this .zip file, extract it, and install it in the .claude/skills/ directory.
View Source Repository

Agent Skills Search Helper

Install a tiny helper to your Agent, search and equip skill from 471,000+ vetted skills library on demand.