apple-design

Implements Apple-style fluid interfaces with spring animations, gesture tracking, and translucent materials for the web.

Updated Aug 25, 2026
One-click install
npx skills add https://github.com/KlyrhonMiko/kly-skills --skill apple-design-klyrhonmiko
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: apple-design
Source: https://github.com/KlyrhonMiko/kly-skills/tree/main/data/skills/apple-design
Command: npx skills add https://github.com/KlyrhonMiko/kly-skills --skill apple-design-klyrhonmiko

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 WWDC design principles into concrete web techniques so interfaces respond instantly, track gestures 1:1, and animate with physical realism. ## Core Features & Use Cases - Spring-Based Motion: Replace fixed-duration CSS transitions with interruptible, velocity-aware springs using damping ratio and response parameters, mapped to Motion/Framer Motion APIs. - Gesture Engineering: Implement pointer capture, velocity handoff, momentum projection, rubber-banding, and hysteresis for drags, swipes, sheets, and flicks. - 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 that users can drag, flick, and re-grab mid-animation, use this Skill to project the flick's landing point, hand off release velocity to the spring, and rubber-band at the boundaries. ## Quick Start Use the apple-design skill to review my drag-to-dismiss modal and make its motion interruptible with proper velocity handoff.

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 interruptible like iOS?▼

Use spring animations instead of CSS transitions or keyframes, since springs animate from the current on-screen value and accept new targets mid-flight. On interrupt, read the element's live transform and re-target the spring while carrying its current velocity to avoid visible jumps.

How to implement momentum scrolling projection for a bottom sheet?▼

Project the resting position with Apple's formula: current + (velocity/1000) * d/(1-d), where d is about 0.998. Snap to the target nearest that projected point, then pass the release velocity to the spring so the drag-to-animation handoff has no visible seam.

What spring parameters should I use in Framer Motion?▼

Apple uses damping ratio and response instead of mass/stiffness/damping. Default to damping 1.0 (no overshoot) with response 0.3-0.4 seconds; use damping around 0.8 only for momentum-driven gestures like flicks. Framer Motion's bounce and duration options map closely to these.

Does backdrop-filter work for Apple-style translucent toolbars?▼

Yes, combine backdrop-filter: blur(20px) saturate(180%) with a semi-transparent background like rgba(255,255,255,0.6) so content scrolls underneath. Never stack light translucent surfaces on each other, and provide a solid fallback for prefers-reduced-transparency.

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

CSS transitions and keyframes have fixed durations and cannot be grabbed or reversed mid-flight, causing velocity discontinuities when a gesture interrupts them. Springs are inherently interruptible and velocity-aware, which is what direct manipulation requires.

How do I handle reduced motion without losing feedback?▼

Respond to prefers-reduced-motion by replacing slides, springs, and parallax with short opacity cross-fades while keeping color and opacity changes that aid comprehension. Also handle prefers-reduced-transparency with solid backgrounds and prefers-contrast with defined borders.