GSAP Animation Reference
Interactive demos of GSAP / ScrollTrigger / Three.js patterns — every card runs live. Filter by section, or just scroll.
02Parallax Speed Control
03Auto Parallax Images
04Layered Text Parallax
scrolling
scrolling
scrolling
scrolling
scrolling
scrolling
scrolling
05SplitText + Lag Effect
06Full-Width Parallax Slab
Content above the slab...
Content below the slab...
08MorphSVG Path Morphing
09Multi-State Cape Animation
10Character Body Part Animation
11Concentric Circle Animation
12SVG Text Reveal (Per-Letter)
13Scrubber / Interactive Timeline
14Visibility Toggle Pattern
16Scroll-Triggered Rotation
Scroll down to trigger rotation...
This element spins on enter
Scroll back up to re-trigger
17Scroll-Triggered Background Color
Scroll down...
Background will change
Watch the color transition
Scroll back up to reverse
18Scroll-Triggered Yoyo Scale
Scroll down...
Pulsing while in view
Scrolled away = paused
19Clamped Parallax Speed
20DrawSVG — Stroke Drawing
21Scrub — Scroll-Linked Progress
23Pin — Fixing Element During Scroll
24Mix-Blend-Mode Difference
25Default — play none none none
Scroll down to trigger the line animation...
This line plays when it enters the viewport, then takes no other actions. Default toggleActions: "play none none none"
Scroll back up — nothing changes
26restart pause resume pause
Scroll down to trigger...
restart on enter, pause on leave, resume on scroll back, pause on leave back. toggleActions: "restart pause resume pause"
Scroll back up — line resumes from where it paused
27play complete reverse reset
Scroll down to trigger...
play on enter, complete (snap to end) on leave, reverse on scroll back, reset (snap to start) on leave back. toggleActions: "play complete reverse reset"
Scroll back up — line reverses, then resets to 0
28play pause resume pause + custom start/end
Scroll down to trigger...
play from start: "top center", pause at end: "top 100px". Scrolling back resumes, leaving again pauses. Infinite repeat: -1 runs within this zone. toggleActions: "play pause resume pause"
Scroll back up — loop resumes, then pauses outside zone
29Basic Scrub — Scroll-Linked Line
Scroll down — the line will begin drawing as it enters...
scrub: true — line scales from start: "top bottom" to end: "top top". Scroll back up to reverse.
Scroll back up — line reverses
30Scrub + Pin — Pinned Section
Scroll down to reach the orange panel...
This panel is pinned. The line animates over end: "+=100%" of scroll distance. After that, the panel unpins.
Panel has unpinned — normal scrolling resumes
31Scrub + Pin + Timeline — Multi-Property
Scroll down to the green panel...
Multiple animations in sync
Timeline: paragraph scales+rotates in, line draws, background transitions to green — all parallel, all scroll-linked.
Panel has unpinned — done!
32ScrollSmoother Image Grid — Auto Parallax
smoother.effects("img", { speed: "auto" }) — one line for all images
33DrawSVG Stroke on Scroll — Pinned Annotation
34Images Through Pinned Text — Clamp + Blend
35ScrambleText — Animated Text Scrambling
36SplitText Lines — Per-Line Reveal
This is the first line of animated text. Here comes the second line with a reveal. And the third line completes the effect.
37Full-Screen Section Transitions
38Variable Height Stacked Pinning
1
2
3
4
39Layered Pinning from Bottom
1
2
3
403D Perspective Scroll Engine
41Neon Flicker Text Morph
42Animated Beam — Node Connections svg
getPointAtLength() to slide a linearGradient "window" along each curve. Inspired by Magic UI's AnimatedBeam.