Apple design web
Skill s1gmamale1/apple-design-skills/skills/apple-design-web
Apple-grade design skill family for Claude Code & Codex — 9 confidence-labeled skills (HIG, Liquid Glass, motion, scrollytelling, OS surfaces, delivery, a11y) with a restraint × surface discipline. One installer links into both ~/.claude/skills and ~/.agents/skills.
npx -y skills add s1gmamale1/apple-design-skills --skill apple-design-webAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Use when building an apple.com-style marketing/product page — the landing-page formula (sticky translucent nav, product-as-hero, full-bleed feature sections, bento grids, fat footer), scroll-driven storytelling, plus the interaction inventory that makes a flagship page feel ALIVE (continuous damped scroll-progress, theme morph, sticky-stack pinning, text wipe, ambient float), the hero media pipeline (video scrub, image sequence, asset sourcing), and Apple's front-end engineering (progressive enhancement, vanilla JS, perf discipline). Part of the apple-design family. Keywords: apple.com, marketing page, landing page, hero, scrollytelling, video scrub, interaction inventory, cross-section theme morph, sticky-stack, chaptered pinning, ambient float, canvas image sequence, createImageBitmap, WebGL 3D viewer, parallax, animation-timeline, scroll-driven animation, IntersectionObserver, progressive enhancement, srcset lazy load, frosted nav, media assets, device frame, CC0, asset sourcing.
SKILL.md
6.4 KB, as published. Nobody here has run it
Apple Design — Web (apple.com language · scrollytelling · engineering)
Recreating apple.com: the page formula, the signature scroll effects, and how it's actually built.
When to use
- Building a premium marketing/product landing page.
- Implementing scroll-driven animation (frame-scrub, pinning, parallax, reveals).
- Deciding the front-end architecture for an Apple-grade page.
Core rules
- Light-first (do this before anything else). apple.com is predominantly light (
#f5f5f7/white); a dark hero is the exception, used for ≤1 purposeful moment — never the default. Show the real product in a real device frame (a real screenshot), never an abstract placeholder. Restraint > gratuitous effects — seeapple-design'sreferences/restraint-and-antislop.md. - Commit to motion on flagship pages (motion IS the substance here). On a flagship/marketing/product surface, a page with only static one-shot fades is a dead template, not Apple-grade. Commit to the interaction inventory — continuous damped scroll-progress transforms (the #1 differentiator), sticky-pinned choreographed scenes, cross-section theme morph (light↔dark), and ambient float so it breathes when scrolling stops. This does NOT weaken light-first/real-product/restraint — both must hold: alive AND tasteful. The motion budget scales by surface (utility surfaces get far less); see the inventory at the top of
references/scrollytelling-techniques.mdand the surface axis inapple-design'sreferences/restraint-and-antislop.md. - The formula: slim sticky translucent nav (~44–48px, blur, chapter-adaptive color) → big centered product hero (name + one tagline + "Learn more ›"/"Buy ›") → alternating full-bleed feature sections, one idea each → bento feature grid → tech specs → fat multi-column footer.
- Scrollytelling decision tree (current apple.com is VIDEO-first): cinematic hero clip → video
currentTimescrub (what apple.com ships —preload=none+ lazy scroll-triggered src + static start/end-frame JPEG fallback + reduced-motion→static frame; mobile-Safari scrub flaky → ImageBitmap hybrid); interactive 3D product the user rotates → WebGL-3D scroll viewer (three.js + GLTF, KTX/Basis textures — Apple's own product-viewer pattern); many crisp frames / frame-exact at low count → canvas image-sequence (the classic pre-2022 alternative — preload, draw on rAF, sliding-windowcreateImageBitmapdecode +.close()); continuous element motion → damped scroll-progress (lerp a shadow-scroll value; engine inapple-design-motion); light↔dark chapters → cross-section theme morph (IO discrete-snap default, rAF-lerp oranimation-timelinevariants); chaptered card deck → sticky-stack (CSSposition:stickystaggeredtop+ ascendingz-index, JS recede enhancement); simple reveal/parallax → CSSanimation-timeline: view()/scroll()with@supports+ IntersectionObserver fallback. The reusable damped-scroll + pointer-reactive engine lives inapple-design-motion; this skill composes it into page-level scenes. Media sourcing, encoding, frame-decode + delivery →references/media-assets-and-delivery.md. - Engineering: apple.com is progressive-enhanced HTML/CSS/vanilla JS (observed: Browserify
ac-*bundles), not a heavy SPA. Responsive<picture>/srcset,loading="lazy", content-hashed immutable assets, deferred JS. - Never scroll-jack, never ship huge unoptimized frame sets, always guard motion with
prefers-reduced-motion.
References
| File | Use for |
|---|---|
references/web-applecom-language.md | Page anatomy + measured specs; nav/hero/feature/footer HTML+CSS recipes |
references/scrollytelling-techniques.md | The apple.com/iphone interaction inventory (ranked alive behaviors, must-consider core vs flourishes) + working code: canvas scrubber, sticky scene, IO reveals, CSS scroll-driven animation, cross-section theme/background morph, sticky-stacked chaptered cards |
references/web-frontend-engineering.md | Observed apple.com architecture, image/font/perf strategy, PE patterns |
references/media-assets-and-delivery.md | How current apple.com delivers hero media (video-first reverse-spec, WebGL-3D viewer, content-hash URLs) · updated technique decision tree · licensed code patterns (provenance + LICENSE) · asset-sourcing IP may/may-not + ship-only-our-own guardrail · encoding/caching/frame-decode (createImageBitmap, sliding window, video keyint=5) |
Common mistakes
- Cluttered hero / multiple competing CTAs; weak whitespace; busy backgrounds behind product.
- Shipping a heavy framework for a static marketing page; render-blocking JS; unoptimized images.
- Janky non-rAF scroll handlers; no reduced-motion fallback; content hidden behind animation.
- Under-animating a flagship page — only static one-shot IO fades = a dead template. On a marketing/product surface, commit to continuous damped scroll-progress + theme morph + ambient float (the inventory). Equally: over-animating a utility surface — match the motion budget to the surface axis.
Related: the damped-scroll + pointer-reactive engine → apple-design-motion · type/color/grid → apple-design-foundations · the nav glass → apple-design-materials · CDN/image delivery → apple-design-backend · copy & persuasion → apple-design-tactics.