scrollytelling-web

Design and implement scroll-driven web narratives with pinned scenes, scrubbed timelines, and 3D product reveals.

3|Updated Jul 28, 2026
One-click install
npx skills add https://github.com/marcmarti9/agentit --skill scrollytelling-web-marcmarti9
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: scrollytelling-web
Source: https://github.com/marcmarti9/agentit/tree/main/skills/scrollytelling-web
Command: npx skills add https://github.com/marcmarti9/agentit --skill scrollytelling-web-marcmarti9

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Scroll-driven pages often degrade into a pile of disconnected parallax effects, broken pinned sections, and janky performance. This Skill provides a structured methodology for building cinematic scrollytelling experiences where scroll acts as a narrative timeline controller, covering storyboarding, engine selection, choreography, performance, and accessibility. ## Core Features & Use Cases - Narrative storyboarding: Convert pages into beats with defined entry/exit states, stable elements, and reduced-motion alternatives before writing code. - Engine selection guidance: Choose between CSS scroll-driven animations, Motion, GSAP + ScrollTrigger, Lenis, Lottie/Rive, or Three.js based on the actual motion requirements. - Product exploded views: Choreograph GLB/glTF part separation along authored axes with anchored labels and supporting camera work. - Image-sequence scrubbing: Map scroll progress to pre-rendered frames with intelligent preloading and mobile fallbacks. - Use Case: A marketing site needs a product page where scrolling disassembles a 3D product into labeled components. Use this Skill to storyboard the beats, build a pinned GSAP/Three.js scene, and verify it across viewports and reduced-motion settings. ## Quick Start Use the scrollytelling-web skill to design and build a scroll-driven product page where scrolling explodes a 3D product into labeled parts with pinned scenes and smooth section transitions.

Frequently Asked Questions about scrollytelling-web

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

FAQPage Schema
How do I build a scroll-driven animation with GSAP ScrollTrigger?▼

Create a pinned wrapper stage and animate descendants through a scrubbed timeline tied to scroll progress. Normalize the experience around a 0..1 progress value or named chapter states, and let one timeline controller own the sequence instead of many independent scroll listeners.

What library should I use for scrollytelling on a website?▼

Use CSS scroll-driven animations for simple reveals, Motion for local React interactions, and GSAP with ScrollTrigger for pinned scenes and coordinated multi-element chapters. Choose Three.js or React Three Fiber only when real 3D camera work, lighting, or exploded assemblies are required.

How do I create a 3D product exploded view on scroll?▼

Start with an authored GLB/glTF that has meaningful node names, pivots, and separate meshes for parts that move independently. Define intact and exploded poses per part, separate along authored local axes, stagger assemblies logically, and keep labels anchored and readable through camera motion.

Does scroll-driven animation work with prefers-reduced-motion?▼

Yes, and it must. Provide a meaningful static or chapter-based version rather than setting durations to zero, which can leave bizarre intermediate states. Essential content should never exist only at one transient animation frame.

Why does my pinned scroll section jump or leave blank gaps?▼

Jumps usually come from animating the pinned element's own transform, nested pins, or stale measurements after asset, font, or layout changes. Pin a stable wrapper, animate descendants, design exact first and last frames, and recompute positions when the engine requires it.

When should I use an image sequence instead of real-time 3D?▼

Use pre-rendered image sequences for photorealistic product transformations when real-time 3D is too costly. Preload frames intelligently around the current frame, draw to a display-sized canvas, map scroll progress monotonically to frame index, and fall back to video or static milestones on constrained devices.