Category · Progress Indicators Difficulty Level · Intermediate Published on · August 18, 2025
Progress Tracker
Interactive progress tracker with step indicators, progress bars, and status updates for multi-step processes.
#progress #tracker #steps #workflow #responsive #animation
Responsive Design
Yes
Dark Mode Support
No
lines
1143
Browser Compatibility
Chrome · Firefox · Safari · Edge
Live Preview
Interact with the component without leaving the page.
HTML
207
lines
CSS
581
lines
JavaScript
355
lines
<div class="progress-container">
<div class="progress-header">
<h1 class="progress-title">Project Progress Tracker</h1>
<p class="progress-subtitle">Track your project milestones and completion status</p>
</div>
<div class="progress-content">
<!-- Overall Progress -->
<div class="overall-progress">
<div class="progress-info">
<h2>Overall Progress</h2>
<span class="progress-percentage" id="overallPercentage">65%</span>
</div>
<div class="progress-bar-container">
<div class="progress-bar" id="overallProgressBar">
<div class="progress-fill" style="width: 65%;"></div>
</div>
</div>
<div class="progress-stats">
<div class="stat-item">
<span class="stat-number" id="completedTasks">13</span>
<span class="stat-label">Completed</span>
</div>
<div class="stat-item">
<span class="stat-number" id="totalTasks">20</span>
<span class="stat-label">Total Tasks</span>
</div>
<div class="stat-item">
<span class="stat-number" id="remainingDays">7</span>
<span class="stat-label">Days Left</span>
</div>
</div>
</div>
<!-- Step Progress -->
<div class="step-progress">
<h2>Project Phases</h2>
<div class="steps-container">
<div class="step completed" data-step="1">
<div class="step-indicator">
<svg class="step-icon" viewBox="0 0 24 24" fill="currentColor">
<path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
</svg>
</div>
<div class="step-content">
<h3 class="step-title">Planning & Research</h3>
<p class="step-description">Define project scope and requirements</p>
<div class="step-progress-bar">
<div class="step-progress-fill" style="width: 100%;"></div>
</div>
<span class="step-status">Completed</span>
</div>
</div>
<div class="step completed" data-step="2">
<div class="step-indicator">
<svg class="step-icon" viewBox="0 0 24 24" fill="currentColor">
<path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/>
</svg>
</div>
<div class="step-content">
<h3 class="step-title">Design & Prototyping</h3>
<p class="step-description">Create wireframes and visual designs</p>
<div class="step-progress-bar">
<div class="step-progress-fill" style="width: 100%;"></div>
</div>
<span class="step-status">Completed</span>
</div>
</div>
<div class="step active" data-step="3">
<div class="step-indicator">
<span class="step-number">3</span>
</div>
<div class="step-content">
<h3 class="step-title">Development</h3>
<p class="step-description">Build and implement the solution</p>
<div class="step-progress-bar">
<div class="step-progress-fill" style="width: 75%;"></div>
</div>
<span class="step-status">In Progress (75%)</span>
</div>
</div>
<div class="step pending" data-step="4">
<div class="step-indicator">
<span class="step-number">4</span>
</div>
<div class="step-content">
<h3 class="step-title">Testing & QA</h3>
<p class="step-description">Quality assurance and bug fixes</p>
<div class="step-progress-bar">
<div class="step-progress-fill" style="width: 0%;"></div>
</div>
<span class="step-status">Pending</span>
</div>
</div>
<div class="step pending" data-step="5">
<div class="step-indicator">
<span class="step-number">5</span>
</div>
<div class="step-content">
<h3 class="step-title">Deployment</h3>
<p class="step-description">Launch and go live</p>
<div class="step-progress-bar">
<div class="step-progress-fill" style="width: 0%;"></div>
</div>
<span class="step-status">Pending</span>
</div>
</div>
</div>
</div>
<!-- Task List -->
<div class="task-list">
<div class="task-header">
<h2>Current Tasks</h2>
<button class="add-task-btn" id="addTaskBtn">
<svg viewBox="0 0 24 24" fill="currentColor">
<path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"/>
</svg>
Add Task
</button>
</div>
<div class="tasks-container" id="tasksContainer">
<div class="task-item completed">
<div class="task-checkbox">
<input type="checkbox" checked>
<span class="checkmark"></span>
</div>
<div class="task-content">
<h4 class="task-title">Set up development environment</h4>
<p class="task-description">Configure tools and dependencies</p>
<div class="task-meta">
<span class="task-priority high">High</span>
<span class="task-date">Completed 2 days ago</span>
</div>
</div>
</div>
<div class="task-item completed">
<div class="task-checkbox">
<input type="checkbox" checked>
<span class="checkmark"></span>
</div>
<div class="task-content">
<h4 class="task-title">Create database schema</h4>
<p class="task-description">Design and implement data structure</p>
<div class="task-meta">
<span class="task-priority medium">Medium</span>
<span class="task-date">Completed 1 day ago</span>
</div>
</div>
</div>
<div class="task-item active">
<div class="task-checkbox">
<input type="checkbox">
<span class="checkmark"></span>
</div>
<div class="task-content">
<h4 class="task-title">Implement user authentication</h4>
<p class="task-description">Build login and registration system</p>
<div class="task-meta">
<span class="task-priority high">High</span>
<span class="task-date">Due in 2 days</span>
</div>
</div>
</div>
<div class="task-item pending">
<div class="task-checkbox">
<input type="checkbox">
<span class="checkmark"></span>
</div>
<div class="task-content">
<h4 class="task-title">Design user interface</h4>
<p class="task-description">Create responsive UI components</p>
<div class="task-meta">
<span class="task-priority medium">Medium</span>
<span class="task-date">Due in 5 days</span>
</div>
</div>
</div>
</div>
</div>
<!-- Progress Actions -->
<div class="progress-actions">
<button class="action-btn secondary" id="resetBtn">
<svg viewBox="0 0 24 24" fill="currentColor">
<path d="M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z"/>
</svg>
Reset Progress
</button>
<button class="action-btn primary" id="updateBtn">
<svg viewBox="0 0 24 24" fill="currentColor">
<path d="M21 10.12h-6.78l2.74-2.82c-2.73-2.7-7.15-2.8-9.88-.1-2.73 2.71-2.73 7.08 0 9.79 2.73 2.71 7.15 2.71 9.88 0C18.32 15.65 19 14.08 19 12.1h2c0 2.08-.8 4.16-2.39 5.75-3.18 3.18-8.54 3.18-11.72 0-3.18-3.18-3.18-8.54 0-11.72 3.18-3.18 8.54-3.18 11.72 0L21 3.9v6.22z"/>
</svg>
Update Progress
</button>
</div>
</div>
</div>
Browser Compatibility
Chrome
≥ 60
Firefox
≥ 55
Safari
≥ 10
Edge
≥ 15