MSQ Logo

Progress

Progress bars communicate the status of a task or process.

Installation

The Progress component is part of the design system. Import it from the UI package.

import { Progress } from "@/components/ui/progress"

Usage

Use Progress with a value (0–100) and optional label placement and variant. Copy the example below to get started.

<Progress value={30} />

Variants

Copy any example below to use in your project. Progress supports label placements (none, right, top, floating) and solid/inset variants.

Label placements (matches Figma examples)

Label: none (inset)

Label: right

0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%

Label: top

Label0%
Label10%
Label20%
Label30%
Label40%
Label50%
Label60%
Label70%
Label80%
Label90%
Label100%

Floating labels

Top floating

Bottom floating

API Reference

The Progress component displays the status of a task or process. It supports value, max, label placement, and variant.

PropTypeDefault
valuenumber—
maxnumber—
labelstring—
labelPlacement"none" | "right" | "top" | "floating-top" | "floating-bottom"—
variant"solid" | "inset"—
showMinDotboolean—

Progress also accepts all standard HTMLDivElement attributes.

interface ProgressProps extends React.HTMLAttributes<HTMLDivElement> {
  value: number
  max?: number
  label?: string
  labelPlacement?: "none" | "right" | "top" | "floating-top" | "floating-bottom"
  variant?: "solid" | "inset"
  showMinDot?: boolean
}