The Library
Every kind of component a site needs, from buttons to page transitions, with new ones as they ship.
- Components
- 121 and counting
- Price
- From €20 a month
- Formats
- React, Vue and HTML
121 GSAP components, each with a live preview, settings you can change and code in React, Vue and HTML.
Animations
Showing 9 of 121Process List
section
Focus Text
scroll
Project Wheel
scroll
Crossover Text
scroll
Echo Headline
scroll
Word Roller
scroll
Zoom Through Text
scroll
Paragraph Indent
scroll
Scribble Highlighter
scroll
121 components in 7 categories, and a new one every week.
Change the timing, ease and distance in the live preview until it feels right.
React, Vue or plain HTML. Or let your AI agent pull it through our MCP server.
It cleans up after itself, respects reduced motion and is safe with server rendering.
Circular Slider, exactly as it runs in the library. Drag it, then change how it moves.
Open the componentCustomize
Available in
Every component comes as plain HTML, React and Vue. In HTML you tune it with data-anm-* attributes; in React and Vue the same settings are props.
Working with an AI agent? Our MCP server hands Claude Code or Cursor the real source, so the GSAP it writes actually runs.
How the MCP server worksThe docs carry what bit us the first time we shipped each thing: real warnings, real fixes.
Installation
GSAP, the library, and the first component running in a minute.
GSAP 3.13+ ships ESM-only - older bundlers need the legacy CJS path or builds silently exclude the timeline.
Quick start
From copy-paste to a tuned component in under five minutes.
useGSAP without a scope leaks selectors across remounts - every animation needs { scope: ref }.
Customization
The data-anm-* attribute system. Every component tuned without touching the source.
data-anm-* attributes read null on first render in Next.js 16 Strict Mode - gate the read inside useGSAP.
Performance
What we tune before shipping, and what to watch in your own build.
GSAP does not return early under prefers-reduced-motion - wrap entries in gsap.matchMedia or the animation runs at full speed for users who asked it not to.
Accessibility
Focus, keyboard, reduced motion. The defaults that ship with every component.
Focus trap inside overlays needs inert on siblings - aria-hidden alone still leaves keyboard reachable.
React
useGSAP, scoped refs, cleanup that survives Strict Mode remounts.
Cleanup with ctx.revert(), not tl.kill() - kill leaves scoped selectors mounted and the next remount double-binds.
Vue
Composable for the script-setup workflow. Nuxt-ready.
Setup script timing - onMounted fires before children mount; use nextTick before binding refs.
Kits are separate products. Not bundled with the Library, not unlocked with a subscription.
They stack. 20% off every Kit while you're a Library member, and 20% off your first Library year when you own a Kit.
Every kind of component a site needs, from buttons to page transitions, with new ones as they ship.
A deep, stand-alone collection of animations built around one system you'd otherwise build from scratch.
121 components in React, Vue and HTML, built the way we build for Coca-Cola and Powerade.
Curated, not a catalog dump.
Every component built to the bar we ship for real brands. Filter, preview live, copy in React or Vue.
Browse the libraryDepth, not breadth.
A deep, stand-alone collection built around one system. Two Kits so far: Reveal, preloaders and hero sections as one mixable system, and Menu, ten site navigation menus as one system. React, Vue, HTML / CSS / JS. Not for Webflow.
See the Menu KitLearn the vocabulary.
Definitions and examples for the GSAP and animation concepts behind production motion. Free, citable, and cross-linked with the components that use each idea.
Open concepts