Progress

A themed Base UI progress primitive for uploads, generation, and long-running tasks.

Preview#

Uploading transcript
x
Controls
import { Progress, ProgressIndicator, ProgressTrack } from "raft-ui";

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

Variants#

primary
x
success
x
warning
x
danger
x

Sizes#

x
x
x

Use indeterminate progress when work has started but a reliable completion percentage is not available yet.

Generating response
x

Composition#

ProgressValue is optional. Omit it when a visible percentage would not help the reader; ProgressLabel still provides the accessible name.

Uploading transcript
x

Keep file-processing context in consumer UI and use the compact progress parts for status within that layout.

example-document.txtProcessing
Processing example-document.txt
x

API#WIP

variantdefault: "primary"
"primary" | "information" | "accent" | "success" | "warning" | "danger"
Semantic indicator color.
sizedefault: "md"
"sm" | "md" | "lg"
Track height: 6px at sm, 8px at md, 10px at lg.
...props
Base UI Progress.Root.Props
All native div attributes plus the remaining Base UI Progress.Root props (value, min, max, render, format, locale, aria-valuetext, ...).
...props
ComponentPropsWithRef<"div">
Label and value row rendered above the track.
...props
Base UI Progress.Label.Props
Accessible component label shown inside the header row.
...props
Base UI Progress.Value.Props
Formatted current value shown inside the header row.
...props
Base UI Progress.Track.Props
Full-width track behind the indicator.
...props
Base UI Progress.Indicator.Props
Filled portion of the track.