apple-motion-feel

apple-motion-feel is a skill for Claude Code from YordiLorenzo/liquid-glass-skills. It costs 134 tokens per session (2,044 once invoked), scanned A, original, MIT.

A guide for choosing animation timing and spring behavior that matches how Apple interfaces usually feel. It covers taps, drags, panels, buttons, and other transitions.

In plain words
What is it for?
Use it to tune damping, duration, easing, interruption behavior, and gesture-driven motion in Apple-platform interfaces.
Why use it?
It removes guesswork when an animation feels slow, wobbly, floaty, or disconnected from the user's gesture.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the liquid-glass plugin — 3 skills shipped together

Good fit Use it to tune damping, duration, easing, interruption behavior, and gesture-driven motion in Apple-platform interfaces.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/yordilorenzo/liquid-glass-skills/apple-motion-feel
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add YordiLorenzo/liquid-glass-skills --skill apple-motion-feel
Clone the repo
git clone --depth 1 https://github.com/YordiLorenzo/liquid-glass-skills

Made for: Claude Code.

Or install liquid-glass, the plugin that ships this one along with the rest of its 3 skills.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for apple-motion-feel

README.md
[![agentmods](https://agentmods.dev/badge/skills/yordilorenzo/liquid-glass-skills/apple-motion-feel/github.svg)](https://agentmods.dev/skills/yordilorenzo/liquid-glass-skills/apple-motion-feel)
Your own site
<a href="https://agentmods.dev/skills/yordilorenzo/liquid-glass-skills/apple-motion-feel"><img src="https://agentmods.dev/badge/skills/yordilorenzo/liquid-glass-skills/apple-motion-feel/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for apple-motion-feel

Your own site · 80×15
<a href="https://agentmods.dev/skills/yordilorenzo/liquid-glass-skills/apple-motion-feel"><img src="https://agentmods.dev/badge/skills/yordilorenzo/liquid-glass-skills/apple-motion-feel.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 134 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,044 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00134 $0.02044
Opus 5 $0.00067 $0.01022
Sonnet 5 $0.00027 $0.00409
Haiku 4.5 $0.00013 $0.00204

Measured 12d ago against content hash 88d984e59f31, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

apple-motion-feel scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

apple-motion-feel/SKILL.md · 171 lines

How it starts

The opening of the file, as written. The whole thing — 171 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Apple motion feel

Most "this animation feels off" bugs are not timing bugs. They are one of four category errors: bounce on something nothing threw, motion that ignores the gesture that caused it, an animation that restarts from the wrong value when interrupted, or feedback that arrives after the user already let go. Fix the category first; only then argue about the number.

The one table that decides damping

Bounce is earned by momentum. If the user threw it, it overshoots. If the user tapped it, it does not. This single rule resolves most spring arguments.

Interaction Damping Response
Tap-driven — buttons, toggles, selection, panels opened by a button 1.0 (critically damped) 0.3–0.4s
Momentum-driven — flicks, throws, drag release 0.8 0.3–0.4s
Move / reposition 1.0 0.4s
Rotation 0.8 0.4s
Drawer / sheet 0.8 0.3s

A tap-opened drawer takes damping 1.0, not the 0.8 in the drawer row — the row assumes the drag-to-open drawer it was measured on. Read the trigger, not the component name.

Symptom mapping: wobble on a tap means damping too low, not duration too long. Sluggish is usually response too high, not damping. Cheap/mechanical is usually a linear or ease-in-out curve where a spring belongs.

SwiftUI's presets, in the terms above

Preset Damping Use
.smooth critically damped, no overshoot the default for tap-driven UI
.snappy slightly underdamped, small overshoot brisk feedback, small elements
.bouncy low damping, visible oscillation playful, deliberate character

All three default to duration: 0.5; all take duration: and extraBounce:. Reach for a preset before a hand-rolled .spring(response:dampingFraction:) — a named preset states intent, and 0.34/0.82 states nothing.

With the modern .spring(duration:bounce:) form, bounce is the readable axis:

bounce Reads as
0.0 critically damped, smooth arrival
0.15 brisk, not bouncy
0.2 drag release with velocity
0.3 exaggerated, deliberate
> 0.4 extreme — wrong for almost all UI
< 0 overdamped, flatter than critical

Read the full file on GitHub · 171 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 12d ago First seen · 171 lines · 134 tokens per session scan A 88d984e59f31

Subscribe to this mod's changes

apple-motion-feel is a skill published in the GitHub repository YordiLorenzo/liquid-glass-skills (4 stars, last pushed 1mo ago), licensed MIT. It adds 134 tokens to every session and 2,044 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

shiny-bslib-theming

Advanced theming for Shiny apps using bslib and Bootstrap 5. Use when customizing app appearance with bstheme(), Bootswatch themes, custom colors, typography, brand.yml integration, Bootstrap Sass variables, custom Sass/CSS rules, dark mode and color modes, dynamic theme switching, real-time theming, theme inspection…

posit-dev/skills · 87 tokens

interaction-skill

Layer A interaction-mechanics reference anchored to the beui.dev catalog. Stacks on any style skill whenever work adds or changes motion or interaction — micro-interactions, animated components, transitions, gestures, hover/press/state feedback, loading/success/error morphs, 'make it feel alive'. Mandates reading the…

code-yeongyu/oh-my-openagent · 104 tokens

shiny-bslib

Build modern Shiny dashboards and applications using bslib (Bootstrap 5). Use when creating new Shiny apps, modernizing legacy apps (fluidPage, fluidRow/column, tabsetPanel, wellPanel, shinythemes), or working with bslib page layouts, grid systems, cards, value boxes, navigation, sidebars, filling layouts, theming…

posit-dev/skills · 107 tokens

layout-skill

Layer A layout-mechanics reference. Stacks on any style skill when the screen is an app shell, dashboard, settings, list-detail, mail/inbox, or any layout with fixed regions plus a scrolling body — or when a layout breaks under long, empty, or unbroken content. Owns spatial structure and scroll ownership; owns zero…

code-yeongyu/oh-my-openagent · 88 tokens

web-ui-best-practices

Signs of taste in web UI. Use when building or reviewing web interfaces, dashboards, SaaS apps, or internal tools.

jamditis/claude-skills-journalism · 32 tokens

vertical-site-conventions

Compose pages and sites that read as their vertical: ecommerce-catalog storefronts that look like storefronts, hospitality-food sites that look like restaurants, b2b-manufacturer sites that look industrial. Use this skill whenever the user wants to build a site that looks like the vertical it serves, fix a build that…

rampstackco/claude-skills · 190 tokens