mobile-touch▌
dylantarre/animation-principles · updated Apr 8, 2026
Disney's 12 animation principles applied to iOS and Android gestures, haptics, and native motion design.
- ›Covers all 12 principles with mobile-specific implementations: squash & stretch via rubber-banding, anticipation through long-press previews, staging with sheet presentations, and arc-based swipe-to-dismiss curves
- ›Provides platform-specific code examples for iOS spring animations and Android Material spring physics, plus haptic feedback pairing guidelines
- ›Establishes timing t
Mobile Touch Animation
Apply Disney's 12 animation principles to mobile gestures, haptics, and native app motion.
Quick Reference
| Principle | Mobile Implementation |
|---|---|
| Squash & Stretch | Rubber-banding, bounce on scroll limits |
| Anticipation | Peek before reveal, long-press preview |
| Staging | Sheet presentations, focus states |
| Straight Ahead / Pose to Pose | Gesture-driven vs preset transitions |
| Follow Through / Overlapping | Momentum scrolling, trailing elements |
| Slow In / Slow Out | iOS spring animations, Material easing |
| Arc | Swipe-to-dismiss curves, card throws |
| Secondary Action | Haptic pulse with visual feedback |
| Timing | Touch response <100ms, transitions 250-350ms |
| Exaggeration | Bounce amplitude, haptic intensity |
| Solid Drawing | Respect safe areas, consistent anchors |
| Appeal | 60fps minimum, gesture continuity |
Principle Applications
Squash & Stretch: Implement rubber-band effect at scroll boundaries. Pull-to-refresh should stretch content naturally. Buttons compress on touch.
Anticipation: Long-press shows preview before full action. Drag threshold provides visual hint before item lifts. Swipe shows edge of destination content.
Staging: Use sheet presentations to maintain context. Dim and scale background during modal focus. Hero transitions connect views meaningfully.
Straight Ahead vs Pose to Pose: Gesture-following animations (drag, pinch) are straight ahead—driven by touch input. System transitions (push, present) are pose to pose—predefined keyframes.
Follow Through & Overlapping: Content continues moving after finger lifts (momentum). Navigation bar elements animate slightly after main content. Lists items settle with stagger.
Slow In / Slow Out: iOS uses spring physics—configure mass, stiffness, damping. Android Material uses standard easing: FastOutSlowIn. Never use linear for user-initiated motion.
Arc: Thrown cards follow parabolic arcs. Swipe-to-dismiss curves based on velocity vector. FAB expand/collapse follows natural arc path.
Secondary Action: Pair haptic feedback with visual response. Button ripple accompanies press. Success checkmark triggers light haptic.
Timing: Touch acknowledgment: <100ms. Quick actions: 150-250ms. View transitions: 250-350ms. Complex animations: 350-500ms. Haptic should sync precisely with visual.
Exaggeration: Pull-to-refresh stretches beyond natural—makes feedback clear. Error shake is pronounced. Success animations celebrate appropriately.
Solid Drawing: Respect device safe areas during animation. Maintain consistent transform origins. Account for notch/dynamic island in motion paths.
Appeal: Minimum 60fps, target 120fps on ProMotion displays. Gesture-driven animation must feel connected to finger. Interruptible animations essential.
Platform Patterns
iOS
// Spring animation with follow-through
UIView.animate(withDuration: 0.5,
delay: 0,
usingSpringWithDamping: 0.7,
initialSpringVelocity: 0.5,
options: .curveEaseOut)
// Haptic pairing
let feedback = UIImpactFeedbackGenerator(style: .medium)
feedback.impactOccurred()
Android
// Material spring animation
SpringAnimation(view, DynamicAnimation.TRANSLATION_Y)
.setSpring(SpringForce()
.setStiffness(SpringForce.STIFFNESS_MEDIUM)
.setDampingRatio(SpringForce.DAMPING_RATIO_MEDIUM_BOUNCY))
.start()
Haptic Guidelines
| Action | iOS | Android |
|---|---|---|
| Selection | .selection |
EFFECT_TICK |
| Success | .success |
EFFECT_CLICK |
| Warning | .warning |
EFFECT_DOUBLE_CLICK |
| Error | .error |
EFFECT_HEAVY_CLICK |
Haptics are secondary action—always pair with visual confirmation.
Discussion
Product Hunt–style comments (not star reviews)- No comments yet — start the thread.
Ratings
4.6★★★★★59 reviews- ★★★★★Pratham Ware· Dec 28, 2024
We added mobile-touch from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
- ★★★★★Hana Taylor· Dec 16, 2024
We added mobile-touch from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
- ★★★★★Henry Abebe· Dec 12, 2024
Solid pick for teams standardizing on skills: mobile-touch is focused, and the summary matches what you get after install.
- ★★★★★Yash Thakker· Nov 19, 2024
mobile-touch fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Luis Rao· Nov 7, 2024
mobile-touch fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Min Park· Nov 3, 2024
Registry listing for mobile-touch matched our evaluation — installs cleanly and behaves as described in the markdown.
- ★★★★★Diya Gupta· Oct 26, 2024
Registry listing for mobile-touch matched our evaluation — installs cleanly and behaves as described in the markdown.
- ★★★★★Charlotte Gill· Oct 22, 2024
mobile-touch fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Dhruvi Jain· Oct 10, 2024
Registry listing for mobile-touch matched our evaluation — installs cleanly and behaves as described in the markdown.
- ★★★★★Piyush G· Sep 21, 2024
Keeps context tight: mobile-touch is the kind of skill you can hand to a new teammate without a long onboarding doc.
showing 1-10 of 59