BackchannelUI
  1. Docs
  2. components
  3. Progress

Progress

Progress bars show either determinate or indeterminate progress of an operation over time.

The <progress> HTML element can be used to build a progress bar, however it is very difficult to style cross browser. ProgressBar helps achieve accessible progress bars and spinners that can be styled as needed.

Loading...13%

Installation

npx shadcn@latest add https://backchanel.com/default/progress

Reusable Wrapper - Example

If you will use a ProgressBar in multiple places in your app, you can wrap all of the pieces into a reusable component. This way, the DOM structure, styling code, and other logic are defined in a single place and reused everywhere to ensure consistency.

The installed file includes a reusable wrapper JollyProgressBar. This wrapper serves as an excellent starting point for use throughout your codebase.

Component progressbar-reusable not found in registry.

The JollyProgressBar component extends the props of React Aria Progress and adds:

PropTypeDefaultDescription
labelstring | undefinedundefinedLabel for the progress bar
showValuebooleantrueWhether to display the progress bar value

You can copy this wrapper and create variations as needed for different use cases in your application. This approach promotes consistency while still allowing for flexibility in implementation.

Examples

Basic

Loading...13%

Labeling

Value Formatting

Sending...¥60

Custom value label

Feeding...30 of 100 dogs