android-compose-state-effects

Installation
SKILL.md

Android Compose State Effects

When To Use

  • Use this skill when the request is about: compose side effect problem, remember vs derivedstateof, collect flow in compose screen.
  • Primary outcome: Manage Compose state, remember APIs, side effects, snapshots, and lifecycle-aware collection without leaks or loops.
  • Reach for this skill when the problem lives inside a composable or Compose runtime primitive, not when redesigning app-wide state holders or reducers.
  • This skill is about runtime primitives inside Compose. If the question is reducer design, screen contracts, or ViewModel ownership, hand off to android-state-management.
  • Handoff skills when the scope expands:
  • android-state-management
  • android-compose-performance

Workflow

  1. Classify the issue first: local remembered state, saved state, derived state, lifecycle-aware collection, or one-off side effects.
  2. Pick the narrowest Compose primitive that matches that problem: remember, rememberSaveable, derivedStateOf, produceState, collectAsStateWithLifecycle, LaunchedEffect, DisposableEffect, SideEffect, or snapshotFlow.
  3. Keep durable UI state separate from transient events such as snackbars, navigation, and analytics.
  4. Stabilize effect keys and callback references so recomposition does not relaunch work or capture stale lambdas.
  5. Hand off broader state-holder design to android-state-management only after the Compose-runtime issue is isolated.

Guardrails

  • Prefer lifecycle-aware collection such as collectAsStateWithLifecycle for UI-facing flows.
Related skills
Installs
14
GitHub Stars
8
First Seen
Mar 7, 2026