Project
Roulette

Testimonial Switcher

Testimonials that rotate on a timer with a draining progress bar.

StarterWeb appUI component1–3hAI-buildable 5/5no setup

Auto-advancing content paired with a progress bar whose animation has to restart in sync with each change. Keeping the bar and the timer from drifting apart is the whole exercise.

UI
Logic
Useful

Hosting · Free forever

Deploys free on GitHub Pages, Cloudflare Pages or Vercel Hobby.

Deploy it and share a link.

Core features · 4

  • Testimonials advance automatically on an interval
  • A progress bar drains in time with the interval
  • The bar restarts cleanly on each change
  • The list wraps back to the start

The interesting part

  • Restarting a CSS animation in sync with a JS interval

Once it works

  • Pause on hover
  • Add manual next/previous controls

Suggested stack

reacttypescripttailwindframer-motiondate-fns

Track it