Phara UI v2.x

Progress

A progress bar component with color, size, label, striped, animated, and indeterminate variants.

Basic

Pass a value between 0 and 100 to fill the bar. The track color automatically matches the bar color.

Blade
<x-ui::progress :value="30" />
<x-ui::progress :value="60" />
<x-ui::progress :value="90" />
Colors

Eight color options: zinc, blue (default), green, yellow, red, purple, lime, and sky.

Blade
<x-ui::progress :value="70" color="zinc" />
<x-ui::progress :value="70" color="blue" />
<x-ui::progress :value="70" color="green" />
<x-ui::progress :value="70" color="yellow" />
<x-ui::progress :value="70" color="red" />
<x-ui::progress :value="70" color="purple" />
<x-ui::progress :value="70" color="lime" />
<x-ui::progress :value="70" color="sky" />
Sizes

Four heights — xs (4 px), sm (6 px), md (10 px, default), lg (16 px).

Blade
<x-ui::progress size="xs" :value="60" color="blue" />
<x-ui::progress size="sm" :value="60" color="blue" />
<x-ui::progress size="md" :value="60" color="blue" />
<x-ui::progress size="lg" :value="60" color="blue" />
Label & Value

Use label for a descriptive title, show-value to display the computed percentage, or both together.

Storage used
72%
Upload progress 88%
Blade
{{-- Label only --}}
<x-ui::progress :value="45" color="green" label="Storage used" />

{{-- Value only --}}
<x-ui::progress :value="72" color="purple" :show-value="true" />

{{-- Both --}}
<x-ui::progress :value="88" color="blue" label="Upload progress" :show-value="true" />
Striped

Add a diagonal stripe overlay with the striped prop. Works with any color and size.

Critical usage 40%
Blade
<x-ui::progress :value="55" color="blue" striped />
<x-ui::progress :value="70" color="green" size="lg" striped />
<x-ui::progress :value="40" color="red" striped label="Critical usage" :show-value="true" />
Animated

Add animated to set the stripes in motion — useful for active uploads, installs, or long-running tasks.

Installing... 80%
Blade
<x-ui::progress :value="65" color="blue" animated />
<x-ui::progress :value="80" color="lime" size="lg" animated label="Installing..." :show-value="true" />
Indeterminate

Use indeterminate when the duration or completion percentage is unknown — the bar loops indefinitely.

Processing...
Blade
<x-ui::progress indeterminate color="blue" />
<x-ui::progress indeterminate color="purple" size="lg" label="Processing..." />
<x-ui::progress indeterminate color="green" size="sm" />
Custom Max

Set a custom max to pass raw values — the component converts them to a percentage automatically.

Tasks completed 30%
1.2 GB of 5 GB 24%
XP progress 85%
Blade
{{-- 3 of 10 tasks complete --}}
<x-ui::progress :value="3" :max="10" color="blue" label="Tasks completed" :show-value="true" />

{{-- 1.2 GB of 5 GB used --}}
<x-ui::progress :value="1.2" :max="5" color="sky" label="1.2 GB of 5 GB" :show-value="true" />

{{-- 850 of 1000 points --}}
<x-ui::progress :value="850" :max="1000" color="lime" label="XP progress" :show-value="true" />