Progress & Status
Upload Progress
Circular rust-toned ring fills to 100% with a leading dot and numeric readout; completes with a green checkmark draw-in. Auto-cycles.
cssmedium complexitymoderate motion
Open on the canvas to copy the code → Free account · 3 copies a day · membership goes unlimited
Worth keeping?
Votes steer what gets built next — sign in to cast one, free to read
When to use it
File upload flows, task completion indicators, any bounded progress metric needing a polished circular display.
When not to
Indeterminate loading states where progress is unknown, or contexts requiring real upload data — remove the auto-cycle loop before shipping.
Working with an AI agent
Every component ships agent-ready metadata. An example instruction for this one:
Change accent color to #f97316, increase fill duration to 4000ms (FILL variable), and rename the filename label from 'archive-2026.zip' to 'report.pdf'. Theme: dark tokens live in :root, the light variant in :root[data-theme="light"]; ?theme=light or a {type:'forever:theme'} postMessage switches at runtime.
Safe to edit
- accent color (--accent, --accent2)
- success color (--ok)
- animation durations (FILL=2800, HOLD=1500, RESET=650)
- filename label (#pg04-name text)
- ring stroke width (clamp values in border)
- theme tokens (:root dark defaults + [data-theme=light] overrides)
Keep intact
- two-half pie ring technique (pg04-rL / pg04-rR rotate pattern)
- IIFE wrapper
- prefers-reduced-motion guard with static fallback
- visibilitychange pause/resume
- theme hook (?theme= bootstrap + forever:theme message listener + theme tokens)
Known limitations
- Auto-cycles by default — must be wired to real upload progress events before production use
- Ring color transition on completion requires class toggle on each half individually due to clip-path technique
More Progress & Status components
- Linear ProgressOlive-to-slate gradient bar fills left-to-right with a glowing leading edge, live percent readout, tick scale, and status dot; cycles fill → hold → reset…
- Segmented StepperFour-step circular stepper auto-advances, filling connector segments with a plum-to-teal gradient and stamping SVG checkmarks as each step completes.
- Skeleton LoaderDark content-card skeleton with avatar, text rows, thumbnail, and pills swept by a staggered denim-blue diagonal shimmer and a breathing radial pulse.
- Battery ChargeBattery shell fills olive-to-tan from 4%→100% over 6 s with a travelling sheen, pulsing bolt icon, and green glow ring at full charge.
- Multi-TrackFour color-coded bars (ingest, transcode, index, publish) fill at staggered ease-out rates with a live N/4 complete counter; auto-resets after all finish.
- BufferingVideo-stream buffering bar: a sage-green fill chases a buffered-ahead band with a sweeping sheen, 8 segment dots, live percent counter, and ETA readout.