compose-animations
Installation
SKILL.md
Compose: animations
Official reference: Quick guide to Animations in Compose. See also Choose an animation API, Value-based animations, Animation modifiers and composables.
Core principle
Pick the smallest API that matches the problem: built-in visibility and layout transitions first, then a single animated value, then a shared transition object when several values must move together, then gesture-level or imperative APIs when the framework cannot express the motion.
Pick the smallest animation API
| Need | API |
|---|---|
| Show or hide a subtree with enter/exit semantics; content is removed after exit completes | AnimatedVisibility |
| Animate one property toward a target derived from state | animateFloatAsState / animateDpAsState / animateColorAsState / animateOffsetAsState / … |
| Several animated values keyed off one boolean, enum, or sealed state | rememberTransition + transition child animations (animateFloat, animateDp, animateColor, animateValue, …) |
| Smooth size when child layout height/width changes (e.g. text wraps) | Modifier.animateContentSize() |
| Swap between different composable trees for the same slot | AnimatedContent or Crossfade |
| User-driven motion (drag, fling, interruptible springs) | Animatable and related coroutine APIs (see Advanced pointers) |