File: progress.md | Updated: 11/15/2025
ThemesThemes PrimitivesPrimitives IconsIcons ColorsColors
Documentation Case studies Blog
Search
/
Introduction Getting started Accessibility Releases
Styling Animation Composition Server-side rendering
Accordion
Alert Dialog
Aspect Ratio
Avatar
Checkbox
Collapsible
Context Menu
Dialog
Dropdown Menu
Form
Preview
Hover Card
Label
Menubar
Navigation Menu
One-Time Password Field
Preview
Password Toggle Field
Preview
Popover
Progress
Radio Group
Scroll Area
Select
Separator
Slider
Switch
Tabs
Toast
Toggle
Toggle Group
Toolbar
Tooltip
Accessible Icon Direction Provider Portal Slot Visually Hidden
Components
Displays an indicator showing the completion progress of a task, typically displayed as a progress bar.
index.jsxindex.jsxstyles.cssstyles.css
CSS
import * as React from "react";
import { Progress } from "radix-ui";
import "./styles.css";
const ProgressDemo = () => {
const [progress, setProgress] = React.useState(13);
React.useEffect(() => {
const timer = setTimeout(() => setProgress(66), 500);
return () => clearTimeout(timer);
}, []);
return (
<Progress.Root className="ProgressRoot" value={progress}>
<Progress.Indicator
className="ProgressIndicator"
style={{ transform: `translateX(-${100 - progress}%)` }}
/>
</Progress.Root>
);
};
export default ProgressDemo;
Provides context for assistive technology to read the progress of a task.
Install the component from your command line.
npm install @radix-ui/react-progress
Import all parts and piece them together.
import { Progress } from "radix-ui";
export default () => (
<Progress.Root>
<Progress.Indicator />
</Progress.Root>
);
Adheres to the progressbar role requirements
.
Contains all of the progress parts.
| Prop | Type | Default |
| --- | --- | --- |
| asChild<br><br>Prop description | boolean | false |
| value<br><br>Prop description | number \| null | No default value |
| max<br><br>Prop description | number | No default value |
| getValueLabel<br><br>Prop description | function<br><br>See full type | No default value |
| Data attribute | Values |
| --- | --- |
| [data-state] | "complete" \| "indeterminate" \| "loading" |
| [data-value] | The current value |
| [data-max] | The max value |
Used to show the progress visually. It also makes progress accessible to assistive technologies.
| Prop | Type | Default |
| --- | --- | --- |
| asChild<br><br>Prop description | boolean | false |
| Data attribute | Values |
| --- | --- |
| [data-state] | "complete" \| "indeterminate" \| "loading" |
| [data-value] | The current value |
| [data-max] | The max value |
PreviousPopover
NextRadio Group