Files
react-test/docs/data/joy/components/linear-progress/linear-progress.md
how2ice 005cf56baf
Some checks failed
No response / noResponse (push) Has been cancelled
CI / Continuous releases (push) Has been cancelled
CI / test-dev (macos-latest) (push) Has been cancelled
CI / test-dev (ubuntu-latest) (push) Has been cancelled
CI / test-dev (windows-latest) (push) Has been cancelled
Maintenance / main (push) Has been cancelled
Scorecards supply-chain security / Scorecards analysis (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
init project
2025-12-12 14:26:25 +09:00

2.7 KiB

productId, title, components, githubLabel
productId title components githubLabel
joy-ui React Linear Progress component LinearProgress component: LinearProgress

Linear Progress

Linear Progress indicators, commonly known as loaders, express an unspecified wait time or display the length of a process.

{{"component": "@mui/docs/ComponentLinkHeader"}}

Introduction

Progress indicators inform users about the status of ongoing processes, such as loading an app, submitting a form, or saving updates.

The LinearProgress is indeterminate by default, indicating an unspecified wait time. To actually have it represent how long an operation will take, use the determinate mode.

The animations of the components rely on CSS as much as possible to work even before the JavaScript is loaded.

{{"demo": "LinearProgressUsage.js", "hideToolbar": true, "bg": "gradient"}}

Component

After installation, you can start building with this component using the following basic elements:

import LinearProgress from '@mui/joy/LinearProgress';

export default function MyApp() {
  return <LinearProgress />;
}

Variants

The linear progress component supports the four global variants: solid, soft (default), outlined, and plain.

{{"demo": "LinearProgressVariants.js"}}

Colors

Every palette included in the theme is available via the color prop. Play around combining different colors.

{{"demo": "LinearProgressColors.js"}}

Sizes

The linear progress component comes with three sizes out of the box: sm, md (the default), and lg.

{{"demo": "LinearProgressSizes.js"}}

:::info To learn how to add more sizes to the component, check out Themed components—Extend sizes. :::

Determinate

You can use the determinate prop if you want to indicate a specified wait time.

{{"demo": "LinearProgressDeterminate.js"}}

Thickness

Provides a number to thickness prop to control the bar's stroke width.

{{"demo": "LinearProgressThickness.js"}}

3rd-party integration

use-count-up

Using the use-count-up package, you can create a counting animation by providing start, end, and duration values.

{{"demo": "LinearProgressCountUp.js"}}

CSS variables playground

Play around with all the CSS variables available on the component to see how the design changes.

You can use those to customize the component on both the sx prop and the theme.

{{"demo": "LinearProgressVariables.js", "hideToolbar": true, "bg": "gradient"}}

Common examples

With label

{{"demo": "LinearProgressWithLabel.js"}}