apple-design

Implements Apple-style fluid interface design with spring animations and gesture-driven interactions for the web.

Updated Aug 22, 2026
One-click install
npx skills add https://github.com/falentio/cimi --skill apple-design-falentio
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: apple-design
Source: https://github.com/falentio/cimi/tree/main/.agents/skills/apple-design
Command: npx skills add https://github.com/falentio/cimi --skill apple-design-falentio

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Web interfaces often feel stiff and disconnected because animations are pre-scripted, gestures lack momentum, and motion cannot be interrupted mid-flight. This Skill translates Apple's fluid interface design principles from WWDC talks into concrete web techniques using CSS, Pointer Events, and spring libraries. ## Core Features & Use Cases - Spring-Based Motion: Apply damping ratio and response parameters to build interruptible, velocity-aware animations with Motion or Framer Motion. - Gesture Engineering: Implement 1:1 drag tracking with Pointer Events, velocity handoff at release, momentum projection for flicks, and rubber-banding at boundaries. - Materials, Typography & Accessibility: Build translucent layers with backdrop-filter, apply size-specific tracking and leading, and honor prefers-reduced-motion and prefers-reduced-transparency. - Use Case: When building a bottom sheet or draggable card, use this Skill to track the pointer with capture, project the flick landing point with Apple's deceleration formula, and hand off release velocity to a spring so the gesture flows seamlessly into the animation. ## Quick Start Use the apple-design skill to review my draggable bottom sheet component and make its motion feel fluid and interruptible.

Frequently Asked Questions about apple-design

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I make web animations feel like iOS spring animations?

Use a spring library like Motion or Framer Motion with damping ratio and response parameters instead of fixed-duration CSS transitions. Start with damping 1.0 and response 0.3-0.4 seconds for default UI, and add bounce only for momentum-driven gestures like flicks.

How to implement a draggable bottom sheet with momentum on the web?

Track the pointer with Pointer Events and setPointerCapture, record velocity from recent pointermove events, then project the landing point using Apple's formula: current + (v/1000) * d / (1 - d) with d around 0.998. Hand the release velocity to a spring targeting the nearest snap point.

Why do CSS transitions feel wrong for gesture-driven UI?

CSS transitions and keyframes cannot be grabbed and reversed mid-flight, so interrupting them causes visible jumps. Springs animate from the current presentation value and carry velocity through re-targeting, which makes them inherently interruptible.

How do I handle prefers-reduced-motion in animated interfaces?

Replace slides, springs, and parallax with short opacity cross-fades or static transitions when prefers-reduced-motion is set. Also respond to prefers-reduced-transparency by making translucent surfaces solid, and prefers-contrast by adding defined borders.

What letter-spacing should large headings use in web typography?

Large display text needs negative tracking, around -0.02em, because letters read too far apart as they grow, while small text benefits from slightly positive tracking. Never apply one fixed letter-spacing value across all sizes.