Compose Feature Slice Builder
A senior-engineer rulebook for shipping one complete feature slice in Compose/CMP projects — endpoint → repository → ViewModel → UI → navigation → DI → tests.
Dev & CodingAdvanced★ 300⑂ 25AI score 9/10Last updated: Oct 2, 2026
What it does
- Adds, changes, or reviews one feature slice (screen, sheet, dialog, destination) in a Compose / Compose Multiplatform project, end to end.
- Fixes the writing order:
Contract.kt→ ViewModel → Route/Screen → DI & navigation → tests. - Enforces concrete patterns: MVI contract (UiState/UiAction/UiEffect),
launchGuardedwith an explicitonError,SavedStateHandledrafts,LifecycleStartEffectcold-load vs reconcile, overlap-guarding jobs. - Requires restating the "state matrix" (cold load, refreshing, error, retry, empty, not-found, overlapping loads, process-death restore) before coding, then shipping real ViewModel tests for those rows.
- Ships verification gates with
rgcommands so noTODO,FIXME,SEAM, or stub body survives to "done". - Scaffolds via
scripts/new-feature.sh, or writes the smallest correct diff when touching an existing destination.
Who it's for
- Android / KMP engineers building Jetpack Compose apps with an MVI architecture.
- Teams that want codified feature-review criteria and architecture that survives two years.
- Anyone tired of AI calling invented helpers or leaving TODOs behind.
Example uses
- "Add a Notes list/detail screen" → scaffold with
scripts/new-feature.sh --name Notes --item Note ..., implement the SEAMs, register the Koin module in the composition root. - "Add draft saving to this form" → drafts in
SavedStateHandlewith derivedUiState, norememberSaveablemirror or syncingLaunchedEffect. - "Review my teammate's feature PR" → use
references/review-mode.mdgates to flag dead UiState fields, silent refresh failures, and missing matrix tests, then emit exactly one corrected version of each blocking file.
· · · Install guide · · ·
Try it now, no install
Paste this into Claude to use the skill without installing anything.
Read the instructions in this file and follow them to help me: https://raw.githubusercontent.com/Meet-Miyani/compose-skill/HEAD/skills/compose-feature/SKILL.md What I want: (describe your task here)
If Claude can't open the link, open it yourself and paste the contents instead.
↓ If it works for you, download the ZIP below and install it. Then it runs on its own — no pasting each time.
Install in the Claude app (no terminal)
- Download the ZIP with the button below.
- In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
- Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
Install in Claude Code
Let Claude do it — paste this into Claude Code
Install the skill I found on Claude Skill Mart. Copy the skills/compose-feature folder from the GitHub repo Meet-Miyani/compose-skill into my ~/.claude/skills/compose-feature/. When it's done, tell me in one line what this skill can do.
Install with a command instead
git clone https://github.com/Meet-Miyani/compose-skill.git && mkdir -p ~/.claude/skills && cp -r compose-skill/skills/* ~/.claude/skills/⚠ This is a third-party skill. Check the source repository before installing.
- Open a terminal.
- Clone the repo:
git clone https://github.com/Meet-Miyani/compose-skill.git - Create the skills folder:
mkdir -p ~/.claude/skills - Copy the skills in:
cp -r compose-skill/skills/* ~/.claude/skills/- This skill references sibling skills (
compose,compose-architecture,compose-ui,compose-data), so copy all of them.
- This skill references sibling skills (
- (Optional) Check whether your project has
scripts/new-feature.shand.composekit.conf. Without them, Claude hand-writes the code instead of scaffolding. - Restart Claude Code and ask something like "Add a Notes list screen slice" — the skill triggers automatically.
View source on GitHub ↗License: MIT