Animated Progress Circle
Modern circular progress indicator with smooth animations, customizable themes, and responsive design, perfect for dashboards and data visualization.
Responsive Design
Yes
Dark Mode Support
No
lines
506
Browser Compatibility
Chrome · Firefox · Safari · Edge
Live Preview
Interact with the component without leaving the page.
HTML
57
lines
CSS
297
lines
JavaScript
152
lines
<div class="progress-circle-container">
<div class="progress-circle-demo">
<div class="demo-header">
<h2>Circular Progress Indicators</h2>
<p>Animated progress circles with customizable themes</p>
</div>
<div class="circles-wrapper">
<div class="circle-item">
<div class="progress-circle" id="progressCircle1">
<svg viewBox="0 0 100 100" class="progress-ring">
<circle class="progress-ring-bg" cx="50" cy="50" r="45" fill="none" stroke="#f1f5f9" stroke-width="8"></circle>
<circle class="progress-ring-fill" cx="50" cy="50" r="45" fill="none" stroke="#667eea" stroke-width="8" stroke-dasharray="283" stroke-dashoffset="283" stroke-linecap="round"></circle>
</svg>
<div class="progress-text">
<span class="progress-value" id="progressValue1">0</span>
<span class="progress-percent">%</span>
</div>
</div>
<div class="circle-label">Project Completion</div>
</div>
<div class="circle-item">
<div class="progress-circle success" id="progressCircle2">
<svg viewBox="0 0 100 100" class="progress-ring">
<circle class="progress-ring-bg" cx="50" cy="50" r="45" fill="none" stroke="#f1f5f9" stroke-width="8"></circle>
<circle class="progress-ring-fill" cx="50" cy="50" r="45" fill="none" stroke="#27ae60" stroke-width="8" stroke-dasharray="283" stroke-dashoffset="283" stroke-linecap="round"></circle>
</svg>
<div class="progress-text">
<span class="progress-value" id="progressValue2">0</span>
<span class="progress-percent">%</span>
</div>
</div>
<div class="circle-label">Task Success</div>
</div>
<div class="circle-item">
<div class="progress-circle warning" id="progressCircle3">
<svg viewBox="0 0 100 100" class="progress-ring">
<circle class="progress-ring-bg" cx="50" cy="50" r="45" fill="none" stroke="#f1f5f9" stroke-width="8"></circle>
<circle class="progress-ring-fill" cx="50" cy="50" r="45" fill="none" stroke="#f39c12" stroke-width="8" stroke-dasharray="283" stroke-dashoffset="283" stroke-linecap="round"></circle>
</svg>
<div class="progress-text">
<span class="progress-value" id="progressValue3">0</span>
<span class="progress-percent">%</span>
</div>
</div>
<div class="circle-label">Resource Usage</div>
</div>
</div>
<div class="controls-wrapper">
<button class="btn btn-primary" id="startAnimationBtn">Start Animation</button>
<button class="btn btn-secondary" id="resetAnimationBtn">Reset</button>
</div>
</div>
</div>
Browser Compatibility
Chrome
≥ 50
Firefox
≥ 45
Safari
≥ 10
Edge
≥ 15