What problem does it solve? Building animations in React Native often results in janky motion that stutters on real devices, because developers animate on the wrong thread, pick wrong properties, or mishandle gesture velocity handoff. This Skill provides a decision sequence and ready-to-build recipes so animations feel right on a release build, not just in the simulator. ## Core Features & Use Cases - Decision framework for motion: Gates whether something should animate at all based on frequency, then selects the cheapest tool (CSS transitions, layout animations, shared values, native stack options) and the right spring or easing curve. - UI-thread animation patterns: Enforces Reanimated worklets, shared values with .get()/.set(), and scheduleOnRN usage so gestures and scroll-driven motion never block the JS thread. - Ready-to-build recipes: Includes implementations for press feedback, drag-to-dismiss bottom sheets, swipe-to-delete rows, collapsing headers, list entrances, keyboard-synced UI, tab indicators, screen transitions, and toasts. - Use Case: When asked to add a draggable bottom sheet to an Expo app, the Skill produces a gesture-driven implementation with momentum projection, rubber-banding, velocity-aware springs, and a haptic on snap — plus guidance on what to feel-check on a physical device. ## Quick Start Ask the assistant to build a drag-to-dismiss bottom sheet animation for your Expo screen using Reanimated and Gesture Handler.