mobile-touch — скилл для Claude Code: анимации и жесты в мобильных
Скилл для ИИ-агента, который помогает проектировать жесты, хаптику и анимации в iOS и Android. Пригодится, когда нужно оживить интерфейс без выдумывания таймингов с нуля.
npx skills add dylantarre/animation-principles --skill mobile-touch -a claude-codeЧто делает mobile-touch
Скилл раскладывает 12 принципов анимации Диснея по мобильным сценариям. Каждому принципу сопоставлена конкретная реализация: rubber-banding на границах скролла, превью при долгом нажатии, momentum-прокрутка после отпускания пальца, пружинные переходы на iOS и Material easing на Android.
Внутри — таблица соответствий, раздел с таймингами и гайд по хаптике. Тайминги заданы числами: отклик на касание меньше 100 мс, быстрые действия 150–250 мс, переходы между экранами 250–350 мс, сложные анимации 350–500 мс. Для хаптики приведена таблица соответствия действий и откликов: выбор, успех, предупреждение, ошибка — отдельные стимулы на iOS и Android. Есть примеры кода на Swift и Kotlin.
Скилл настаивает: хаптика — вторичное действие, её всегда нужно подкреплять визуальным откликом. Линейную кривую для движения, инициированного пользователем, он использовать не советует. Если вы делаете веб-интерфейс или десктоп, пользы тут мало — материал целиком про нативные мобильные платформы.
Какие задачи решает
- подобрать тайминг отклика на касание
- согласовать хаптику с визуальной реакцией
- сделать пружинный переход между экранами на iOS
- настроить momentum-прокрутку после отпускания пальца
- выбрать кривую для анимации, запущенной жестом
Примеры запросов агенту
- Помоги настроить spring-анимацию для карточки на iOS
- Какие тайминги ставить для перехода между экранами?
- Подбери хаптик-отклик для подтверждения действия
Как установить mobile-touch
1Через Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill mobile-touch -a claude-code2Вручную: положить файлы
~/.claude/skills/mobile-touch/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/mobile-touch/
1Через Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill mobile-touch -a codex2Вручную: положить файлы
.agents/skills/mobile-touch/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill mobile-touch -a cursor2Вручную: положить файлы
.cursor/skills/mobile-touch/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install dylantarre/animation-principles mobile-touch2Вручную: положить файлы
.github/skills/mobile-touch/SKILL.md1Через Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill mobile-touch -a gemini-cli2Командой платформы
gemini skills install https://github.com/dylantarre/animation-principles --path skills/01-by-domain/mobile-touchВручную: положить файлы
.devin/skills/mobile-touch/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill mobile-touch -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора86
Похожие
Рядом в теме «Мобильная разработка»
Всё по теме «Мобильная разработка» →Вопросы о mobile-touch
Как установить mobile-touch в Claude?
Выполните npx skills add dylantarre/animation-principles --skill mobile-touch -a claude-code. Скилл окажется в ~/.claude/skills/mobile-touch/SKILL.md.
Что делает mobile-touch?
Помогает агенту проектировать жесты, хаптику и анимации в нативных мобильных приложениях, опираясь на 12 принципов анимации и конкретные тайминги.
Для каких платформ подходит скилл?
Он про iOS и Android: пружинные анимации, Material easing, safe areas, ProMotion. Для веба и десктопа материал не предназначен.
Исходный текст
SKILL.md · MIT
---
name: mobile-touch
description: Use when designing iOS/Android gestures, haptic feedback, touch interactions, or native mobile animations.
---
# 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
```swift
// 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
```kotlin
// 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.
© dylantarre · MIT · dylantarre/animation-principles