From android-dev
Guides building UI with Jetpack Compose: state hoisting, modifier patterns, performance optimizations (remember, derivedStateOf), theming, and previews.
How this skill is triggered — by the user, by Claude, or both
Slash command
/android-dev:compose-uiThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Follow these guidelines to create performant, reusable, and testable Composables.
Follow these guidelines to create performant, reusable, and testable Composables.
Make Composables stateless whenever possible by moving state to the caller.
@Composable
fun MyComponent(
value: String, // State flows down
onValueChange: (String) -> Unit, // Events flow up
modifier: Modifier = Modifier // Standard modifier parameter
)
viewModel.uiState.collectAsStateWithLifecycle()) and passes it down.modifier: Modifier = Modifier as the first optional parameter.modifier to the root layout element of your Composable.padding().clickable() is different from clickable().padding(). Generally apply layout-affecting modifiers (like padding) after click listeners if you want the padding to be clickable.remember: Use remember { ... } to cache expensive calculations across recompositions.derivedStateOf: Use derivedStateOf { ... } when a state changes frequently (like scroll position) but the UI only needs to react to a threshold or summary (e.g., show "Jump to Top" button). This prevents unnecessary recompositions.
val showButton by remember {
derivedStateOf { listState.firstVisibleItemIndex > 0 }
}
viewModel::onEvent) or remembered lambdas to prevent unstable types from triggering recomposition of children.MaterialTheme.colorScheme and MaterialTheme.typography instead of hardcoded colors or text styles.DesignSystem.kt or Components.kt) if they are shared across features.@Preview(showBackground = true) and include Light/Dark mode previews if applicable.npx claudepluginhub p/hanamizuki-android-dev-plugins-android-devProvides Jetpack Compose patterns for state hoisting, remember variants, slot APIs, modifiers, side effects, theming, animations, and performance in Android UI development.
Guides on Jetpack Compose for Android UI development, covering state management with remember/mutableStateOf, state hoisting, ViewModel integration, and composable best practices.
Guides building native Android UIs with Jetpack Compose, including state management via remember/mutableStateOf, state hoisting, and ViewModel integration.