Feedback

Progress

A progress bar with determinate and indeterminate states, step labels, status text, and multiple animation styles.

Playground

Basic Usage

<script lang="ts">
  import { Progress } from 'sv5ui';
</script>

<Progress value={60} />

Sizes

7 track sizes.

2xs

xs

sm

md

lg

xl

2xl

<Progress value={60} size="2xs" />
<Progress value={60} size="xs" />
<Progress value={60} size="sm" />
<Progress value={60} size="md" />
<Progress value={60} size="lg" />
<Progress value={60} size="xl" />
<Progress value={60} size="2xl" />

Colors

primary

secondary

success

warning

error

info

<Progress value={60} color="primary" />
<Progress value={60} color="secondary" />
<Progress value={60} color="tertiary" />
<Progress value={60} color="success" />
<Progress value={60} color="warning" />
<Progress value={60} color="error" />
<Progress value={60} color="info" />
<Progress value={60} color="surface" />

With Status

Show percentage text.

60%
35%
<Progress value={60} status />
<Progress value={35} status color="success" />

Indeterminate

Pass value={null} for loading state.

<Progress value={null} />
<Progress value={null} color="secondary" />

Animations

4 indeterminate animation styles.

carousel

carousel-inverse

swing

elastic

<Progress value={null} animation="carousel" />
<Progress value={null} animation="carousel-inverse" />
<Progress value={null} animation="swing" />
<Progress value={null} animation="elastic" />

Steps

Pass string array to max for step-based display.

Account
Profile
Review
<script lang="ts">
  import { Progress } from 'sv5ui';

  let value = $state(1);
  const steps = ['Step 1', 'Step 2', 'Step 3'];
</script>

<Progress {value} max={steps} />

UI Slots

SlotDescription
rootOutermost wrapper
baseTrack element
indicatorFill indicator
statusStatus text
stepsSteps container
stepIndividual step label

Snippets

SnippetDescription
statusSlotCustom status content (receives percent)
stepSlotCustom step label (receives step, index)

Props

PropTypeDefault
valuenumber | null-
maxnumber | string[]100
statusbooleanfalse
colorColorType'primary'
size'2xs'|'xs'|'sm'|'md'|'lg'|'xl'|'2xl''md'
orientation'horizontal'|'vertical''horizontal'
invertedbooleanfalse
animation'carousel'|'carousel-inverse'|'swing'|'elastic''carousel'
refstring-
classstring-
uiRecord<Slot, Class>-