Animated Circular Progress Bar Demo

PreviousNext

Example showing an animated circular progress gauge.

Docs
magicuiexample

Preview

Loading preview…
registry/example/animated-circular-progress-bar-demo.tsx
"use client"

import { useEffect, useState } from "react"

import { AnimatedCircularProgressBar } from "@/registry/magicui/animated-circular-progress-bar"

export default function AnimatedCircularProgressBarDemo() {
  const [value, setValue] = useState(0)

  useEffect(() => {
    const handleIncrement = (prev: number) => {
      if (prev === 100) {
        return 0
      }
      return prev + 10
    }
    setValue(handleIncrement)
    const interval = setInterval(() => setValue(handleIncrement), 2000)
    return () => clearInterval(interval)
  }, [])

  return (
    <AnimatedCircularProgressBar
      value={value}
      gaugePrimaryColor="rgb(79 70 229)"
      gaugeSecondaryColor="rgba(0, 0, 0, 0.1)"
    />
  )
}

Installation

npx shadcn@latest add @magicui/animated-circular-progress-bar-demo

Usage

import { AnimatedCircularProgressBarDemo } from "@/components/animated-circular-progress-bar-demo"
<AnimatedCircularProgressBarDemo />