Progress

Linear and circular progress indicators.

Quick Preview

Profile
x
68%

Composition

Use this public composition when building Progress:

Progress
├── ProgressLabel
├── ProgressTrack
│   └── ProgressIndicator
└── ProgressValue

Usage

<Progress value={65}><ProgressTrack><ProgressIndicator /></ProgressTrack></Progress>

Examples

Sizes

Use size to scale linear and circular progress indicators consistently.

x
72%
x
72%
x
72%

Props

Prop/APITypeDefaultDescription
size`"sm""md""lg"`
disabledbooleanfalseMuted disabled state.
labelOverlay on CircularProgressbooleanfalsePlaces value text inside circle.
pixelSize on CircularProgressnumbersize presetOverrides the rendered SVG size in pixels.
strokeWidth on CircularProgressnumbersize presetOverrides the rendered SVG stroke width in pixels.
strokeLinecap on CircularProgress"round" | "butt" | "square""round"Controls arc end caps. Use butt for tiny rings where caps distort the visible remainder.
children on CircularProgressReactNodepercentage labelReplaces the default value label with custom center content.
classNamestring-Local layout or spacing overrides.
native/root propsReact component props-Passed through to the underlying root or primitive.

Accessibility

  • Preserve the documented Progress composition so labels, triggers, content, and controls remain connected.
  • Provide visible labels or accessible names for interactive controls.
  • Preserve the component-provided focus, keyboard, disabled, and invalid-state behavior.
  • Do not communicate state with color alone; include text, icons, or helper copy.

On this page