Skip to content

Repository files navigation

Folder Component

CI status GitHub stars Last commit Live playground MIT license

A browser playground for comparing five animation engines on the same interactive folder component: GSAP, Motion, Anime.js, pure CSS, and native WAAPI.

Open the live playground

Product tour

Five-engine grid Kinetic preset
Folder Component grid with twenty folders and shared engine controls Folder Component using the Anime.js kinetic preset
Single-folder studio Mobile code export
Large Windows 11 folder preview with collection navigation Generated standalone component and folder preview on a narrow viewport

Features

  • Switch animation engines without changing folder geometry or content.
  • Browse 20 curated folders with a different cover image on every folder.
  • Toggle between the responsive grid and a full-size single-folder preview with collection browsing.
  • Randomize the grid or force one of nine expansion layouts across every folder.
  • Scale a responsive 1–9 column grid through one folder-size/density control.
  • Switch between classic, diagonal, rounded, and Windows 11 folder silhouettes.
  • Apply six color palettes or a custom color from the native picker.
  • Tune tab size/alignment, cover opacity/blur, label glass, border weight/opacity/radius, and SVG noise.
  • Load complete design and behavior presets from the top dropdown.
  • Copy a live single-file React component from the Code panel; styles and demo data are embedded, with no project-local file imports.
  • Use keyboard, pointer, or touch interactions with reduced-motion support.
  • Keep working when remote Pexels images fail through deterministic neutral fallbacks.

Quick start

Use the repository runtime baseline: Node.js 24.15.0 and pnpm 12.0.0.

pnpm install
pnpm run dev

Open http://localhost:3000.

Verify

pnpm run typecheck
pnpm run lint
pnpm run format:check
pnpm run test
pnpm run test:e2e
pnpm run build
pnpm run deps:check

Documentation

The app is fully static. It has no backend, secrets, API keys, or required environment variables. Pexels imagery is used under the Pexels license.

Status

  • Local gates cover 98 unit tests and 22 Chromium end-to-end scenarios.
  • Firefox, Safari, and manual screen-reader testing are not part of the automated baseline.
  • Motion and Anime.js load on demand and prefetch on pointer or keyboard intent. The initial JavaScript bundle is 118.28 kB gzip, down from 151.67 kB before this split.

License

MIT

Support

Sponsor this project

Support continued development through GitHub Sponsors or Ko-fi.

About

Compare GSAP, Motion, Anime.js, CSS, and WAAPI on one interactive folder component playground.

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages