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-managementandroid-compose-performance
Workflow
- Classify the issue first: local remembered state, saved state, derived state, lifecycle-aware collection, or one-off side effects.
- Pick the narrowest Compose primitive that matches that problem:
remember,rememberSaveable,derivedStateOf,produceState,collectAsStateWithLifecycle,LaunchedEffect,DisposableEffect,SideEffect, orsnapshotFlow. - Keep durable UI state separate from transient events such as snackbars, navigation, and analytics.
- Stabilize effect keys and callback references so recomposition does not relaunch work or capture stale lambdas.
- Hand off broader state-holder design to
android-state-managementonly after the Compose-runtime issue is isolated.
Guardrails
- Prefer lifecycle-aware collection such as
collectAsStateWithLifecyclefor UI-facing flows.
Related skills
More from krutikjain/android-agent-skills
android-di-hilt
Wire Android dependency injection with Hilt, scopes, testing overrides, and module ownership boundaries.
194android-testing-unit
Write fast, focused Android unit tests for reducers, use cases, repositories, and lifecycle-safe state holders.
187android-kotlin-core
Use Kotlin idioms safely in Android apps, including nullability, data classes, sealed types, extension functions, and collection pipelines.
185android-gradle-build-logic
Shape Android build logic with Gradle, version catalogs, plugins, convention patterns, and toolchain compatibility.
185android-networking-retrofit-okhttp
Build Android networking stacks with Retrofit, OkHttp, interceptors, API contracts, and resilient error handling.
183android-coroutines-flow
Use coroutines, Flow, structured concurrency, dispatchers, and cancellation-safe Android async pipelines.
181