forever components

Neumorphism

Progress Track

Neumorphic inset progress track fills 0→100% via a slate-to-olive gradient fill, cycling with a percentage counter. Resets and loops automatically.

csslight complexitysubtle motion

Open on the canvas to copy the code → Free account · 3 copies a day · membership goes unlimited

Live demo — the real component, running in a sandbox. One self-contained HTML file, zero dependencies. Open it on the canvas →
Worth keeping? Votes steer what gets built next — sign in to cast one, free to read

When to use it

Loading screens, file upload indicators, onboarding step trackers with a soft/clay UI aesthetic.

When not to

Production upload flows — remove the auto-loop and wire real progress values. Avoid on light or dark backgrounds that don't match the hardcoded #e0e5ec base.

Working with an AI agent

Every component ships agent-ready metadata. An example instruction for this one:

Change the gradient to warm tones (e.g. background: linear-gradient(90deg,#ff7c5c,#fbbf24)), slow the cycle to 8 seconds by setting DURATION=8000, and change the label text from 'LOADING' to 'UPLOADING'. 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

  • fill gradient colors (#5C6670 → #75894D)
  • cycle duration (DURATION=4000)
  • label text ('LOADING')
  • track height (18px)
  • box-shadow depths for inset effect
  • theme tokens (:root dark defaults + [data-theme=light] overrides)

Keep intact

  • IIFE wrapper
  • prefers-reduced-motion guard (static 60% fallback)
  • visibilitychange pause/resume
  • transition:none reset pattern before re-animating
  • theme hook (?theme= bootstrap + forever:theme message listener + theme tokens)

Known limitations

  • Background color (#e0e5ec) is hardcoded in both CSS and the neumorphic shadows — changing it requires updating multiple shadow values to maintain the soft-UI effect
  • Auto-loops by default; wire real progress values and remove setInterval for production use

neumorphismprogress-barloadingloopui-controlsoft-ui

More Neumorphism components

  • Toggle SwitchesThree neumorphic toggle switches auto-cycle on/off with a smooth ochre-accented thumb slide and inset shadow track.
  • Volume KnobA neumorphic volume knob with 24 tick marks auto-rotates back and forth over 6 seconds, its gradient marker sweeping the full 360 degrees.
  • Stat CardsFour neumorphic stat cards (temp, humidity, power, signal) cycle through live-updating values one at a time, each card pulsing its shadow on update.
  • Ring GaugeSVG ring gauge fills with a sage-to-slate gradient arc over 4 seconds, counting a numeric percentage; resets and loops continuously.