The library

Curated, not a catalog dump.

Every signature component, built for a real site. Filter, preview live, copy in React or Vue.

Browse the library

Landmark Kits

Depth, not breadth.

A deep, stand-alone collection built around one system. The first Kit is Reveal - preloaders and hero sections, one mixable system, WebGL and GSAP. React, Vue, HTML / CSS / JS. Not for Webflow.

See the Reveal Kit

Concepts, patterns, tools

Learn 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

Spiral Gallery

An infinite vertical helix of image cards, climbing and orbiting a central axis like a winding staircase seen from inside it. Drag to spin, release to let the speed carry over and decay, or just scroll the page to speed it up.

Guides

One of 85 GSAP components in React, Vue and HTML.

The full source for Spiral Gallery is locked.

On mobile

Take the free components with you.

Text Reveal
Text Reveal
Accordion
Accordion
Dual Scramble
Dual Scramble
Multi-Level Drawer Menu
Multi-Level Drawer Menu
Image Fly-In
Image Fly-In
Scale Slider
Scale Slider
Curtain Slider
Curtain Slider
Feature Dialog
Feature Dialog
ASCII Overlay
ASCII Overlay

In React, Vue and HTML, in your inbox, ready when you're back at your desk.

A Good Fella original.
The craft

How it's built.

The whole spiral runs off one number. Nudge it up and every card climbs and turns around the middle at once, and a card that reaches the top drops back to the bottom out of frame, so it never ends and there is nothing to reset.

The part that took longest was making the cards solid. They face outwards, so as they come round they cross each other, and the moment I let them go even slightly see-through the overlaps started flickering. So they stay fully solid and the depth of the scene works out what sits in front, which fixes it on its own. The fade as each image loads leans on the same trick.

The momentum comes off your own drag rather than a physics plugin, because the thing with weight here is the whole spiral, not the card you grabbed. Past that it is yours: your own images, how wide the spiral sits, how many cards are on it, how fast it drifts by itself, and how far a throw carries.

Required

What you'll need.

Install

  • GSAP
  • three
  • Draggable

Attributes, tips, use cases and full code are part of access.

The preview and provenance stay public. Tune-it docs, the data-anm-* attribute table, real-world use cases and the copy-ready code unlock the moment you sign in.

Frequently asked

Does Spiral Gallery work with React and Vue?
Spiral Gallery ships as React (Next.js included), Vue 3 (Nuxt included), plain HTML/CSS/JS - the same animation in each format. The React version uses the official useGSAP hook with cleanup handled; the Vue version is a real single-file component with <script setup>.
Do I need GSAP to use Spiral Gallery?
Yes. Spiral Gallery is built on GSAP directly, and GSAP has been 100% free for commercial use, including every plugin, since version 3.13. The component page lists exactly what to install.
Can I customize Spiral Gallery without editing code?
Spiral Gallery exposes 11 tunable controls in the Customize panel on this page - drag the values, watch the live preview respond, and the code you copy carries your exact settings.
Is Spiral Gallery free?
Spiral Gallery is part of the Annnimate Library, a paid subscription (from EUR 20/month billed quarterly, or EUR 199/year). The live preview and customization run free on this page; the paste-ready code is for members.
What if Spiral Gallery is not right for my project?
Annnimate comes with a 14-day money-back guarantee. If Spiral Gallery or the library does not fit your project, reply to your receipt within 14 days for a full refund, no questions asked.
Can I use Spiral Gallery in client projects?
Yes. The Annnimate license covers commercial and client work - ship Spiral Gallery on as many projects as you build, with no attribution required.
Does Spiral Gallery respect prefers-reduced-motion?
Yes. Every Annnimate component handles prefers-reduced-motion via gsap.matchMedia, so users who opt out of motion get an effectively instant, readable state.