For the complete documentation index, see llms.txt. This page is also available as Markdown.

🟢Progress

Github Tracker

Figma Reference https://www.figma.com/design/14ySC6RFgp4hxDcHfRbGSO/UDS---in-progress--?node-id=24823-34667&t=ygzvHHtz157q3TAy-4

Progress Bar

Overview:

  • The Progress Bar component visually communicates the status of an ongoing operation such as loading, uploading, or file transfers. It reassures users that a process is active and provides visibility into completion progress through percentage indicators and contextual labels.

  • Progress bars should be used when a task duration is known and expected to take longer than one second. They provide clear feedback through high-contrast colors, consistent labeling, and determinate states that show measurable progress toward completion.

Usage Guidelines

  • Use progress bars to inform users that a system action is actively processing and to communicate how much of the task has been completed.

When to use

  • Operations that take longer than 1–2 seconds

  • Loading or fetching data

  • File uploads or transfers

  • Saving or processing system tasks

  • Any process where completion percentage can be calculated

When not to use

  • Very fast operations (under one second)

  • Actions that complete instantly without noticeable delay

  • Situations where progress cannot be measured or estimated

Best practices

  • Always include text labels to provide context (e.g., Loading, Uploading files, Processing request)

  • Display percentage values when the completion progress is measurable

  • Maintain high contrast colors for readability and accessibility

  • Avoid indeterminate states when the duration is known

  • Ensure consistent placement and alignment of labels across layouts

Component Properties

style (enum)Options: grey, cta, alert

Purpose: Controls the visual color treatment of the progress bar.

Usage:

  • grey → neutral progress state

  • cta → emphasized progress using Dev Launchers CTA colors (Cosmic / Nebula)

  • alert → communicates status feedback such as warning, success, error, or info

Context: Styles align with existing Dev Launchers CTA and alert color tokens to maintain consistency across the design system.

status (enum)

Options: default, warning, success, error, info

Purpose: Represents the semantic meaning of the progress state when using the alert style.

Usage:

  • success → operation completed successfully

  • warning → process requires attention

  • error → operation failed

  • info → informational progress feedback

Context: Helps communicate system state clearly through color and iconography.

progress-value (number)

Purpose: Defines the completion percentage of the progress bar.

Usage:

0–100 → indicates percentage of completion

Context: Displayed visually through the progress fill and communicated textually through the percentage label.

label-text (string)

Purpose: Provides contextual information about the operation being performed.

Usage examples:

  • Loading assets

  • Uploading files

  • Processing request

Context: Helps users understand what task the progress bar represents.

breakpoint (enum)

Options: mobile-tablet, desktop-laptop

Purpose: Controls layout responsiveness.

Usage:

mobile-tablet → optimized for smaller screens desktop-laptop → optimized for larger layouts

Context: Automatically adapts when placed into responsive breakpoints.

Appearance Modes

The Progress Bar supports the following variable collections:

style

Semantic color variations:

  • grey → neutral default state

  • cta → emphasized progress using Dev Launchers CTA palette (Cosmic / Nebula)

  • alert → status-driven feedback colors

Alert substyles include:

  • warning

  • success

  • error

  • info

These styles allow the component to support multiple use cases while maintaining consistency with Dev Launchers design tokens and system alerts.

breakpoint

Layout responsiveness for different screen sizes:

  • mobile / tablet → optimized spacing and scaling for smaller devices

  • desktop / laptop → standard layout for larger screens

The component automatically adjusts when placed into responsive design breakpoints.

Label Placement

Progress labels follow consistent alignment rules for clarity and readability.

Labels are placed to the right of the progress bar, with:

  • Top label → contextual text description

  • Bottom label → percentage value

Labels are intentionally not placed inside the progress bar to maintain maximum readability and avoid contrast issues as progress fill changes.

Consistent right alignment prevents visual confusion and keeps information predictable across layouts.

Nested Components

The Progress Bar contains several nested elements:

Text Label Component Provides contextual information about the operation.

Percentage Text Component Displays the completion value (e.g., 45%).

Circle Check Icon Appears in completion states such as success to reinforce visual confirmation.

Accessibility Considerations ♿

Labeling All progress bars include descriptive labels to communicate state changes such as:

  • Loading

  • Error

  • Complete

These labels provide context for assistive technologies.Screen Reader Support

Progress values should be announced using ARIA attributes.

Recommended implementation:

This ensures screen readers correctly communicate progress updates.Contrast

All styles maintain WCAG AA compliant contrast ratios to ensure readability across themes and backgrounds.

State Communication

Color should not be the only indicator of status. Icons and labels should reinforce meaning.

Developer Notes

This component is non-interactive and should only communicate system status.

Implementation guidelines

Progress bars should:

Be updated dynamically through application state Reflect accurate completion percentages Update text labels alongside percentage values

Responsive behavior

When placed into layout breakpoints, the progress bar automatically adjusts to:

  • Mobile / Tablet layouts

  • Desktop / Laptop layouts

Spacing and alignment follow system tokens for consistency across screen sizes.

Unsupported Behaviors

The Progress Bar component is not designed to be interactive.

Users should not:

  • Click

  • Drag

  • Adjust

  • Manipulate progress values manually

Progress updates must be controlled entirely by the system or application state.

Deferred Enhancements

The following enhancements are planned for future iterations:

Predictive timing

Interactive labels displaying estimated time remaining.

Behavioral optimization

Data-driven progress behavior that adapts to real usage patterns.

Segmented progress states

Multi-stage progress indicators such as:

  • Draft

  • Review

  • Approved

Adaptive animation

Progress animations that move faster during early stages and slow as they approach completion to create perceived responsiveness.

Known Issues

No known issues.

WCAG 2.1 – Progress Indicator Accessibility ARIA Authoring Practices – Progressbar Pattern Dev Launchers Design Tokens (Color, Spacing, Radius)

Last updated

Was this helpful?