finds.dev

tholman/cursor-effects

Old-school cursor effects for your browser built with modern JavaScript

View on GitHubHomepage ↗

★ 4,080JavaScriptupdated Feb 2026

// the take

A JavaScript library that recreates a dozen late-90s/early-2000s cursor gimmicks (trailing sparkles, bubbles, ghost followers, emoji rain) as canvas-based effects you drop onto any page. It's for people building a nostalgia-themed personal site, a joke page, or a one-off marketing stunt — not for anything that needs to look professional.

Each effect is a self-contained class with a clean `new Effect()` / `.destroy()` lifecycle, so adding and removing them is trivial and doesn't leak canvas elements. Ships both a UMD bundle (`cursoreffects.x`) and tree-shakeable ESM exports, so you can pull in just `fairyDustCursor` instead of the whole library. Respects `prefers-reduced-motion` out of the box, which a lot of flashier libraries skip. Several effects expose real customization hooks (colors, images, velocity/rotation/scaling functions on `characterCursor`) rather than being hardcoded demos.

It's a joke/nostalgia project, not something under active maintenance with a roadmap — don't expect new effects or prompt bugfixes beyond what's already there. Canvas-per-effect with particle loops means performance scales badly if someone layers multiple effects or has a lot of DOM movement on a weak device, and there's no built-in throttling or FPS cap exposed. Types are hand-maintained in a separate `types.d.ts` rather than generated from source, so they can silently drift from the actual API. No test suite in the repo, so regressions in individual effects (there are a dozen, each with its own physics/animation code) would only surface visually.

We read the README, the directory tree and a key source file in October 2026. Nobody pays to be listed. How we judge →

search the same ground:

// at a glance

Stars
4,080
Forks
271
Language
JavaScript
Last commit
26 Feb 2026

// nearby

If cursor-effects isn't quite it.

All repos →