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

Dithering

Turns any image or video into two colours of little dots, with a lens that follows your cursor and fills the dots back in with the real colours underneath. A retro, 1-bit print look for hero images and video backdrops.

Guides

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

The full source for Dithering 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

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 cursor lens was the part that took the work. My first version had it as a clean circle and it looked bad, kinda like a sticker on top of the image. So I made the edge wobble as it moves, and what made it work is the wobble moves in a small circle instead of drifting one way, so the edge shifts in place instead of sliding across. The dark parts also have a small flicker so they don't look flat.

After that it's yours. Point it at any image or video, pick the two colours, make the dots big or small and if you set the background colour to nothing you get just the dots over whatever's behind them. You can also open a soft hole in the middle to keep the centre clear.

Required

What you'll need.

Install

  • GSAP
  • three

Concepts

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 Dithering work with React and Vue?
Dithering 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 Dithering?
Yes. Dithering 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 Dithering without editing code?
Dithering exposes 14 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 Dithering free?
Dithering is part of the Annnimate Library, a paid subscription (from EUR 249/year). The live preview and customization run free on this page; the paste-ready code is for members.
Can I use Dithering in client projects?
Yes. The Annnimate license covers commercial and client work - ship Dithering on as many projects as you build, with no attribution required.
Does Dithering 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.