---
title: "LinearProgressIndicator"
description: "Determinate Material Design linear progress indicator."
type: "component"
social_image: "/static/images/material/linear-progress-indicator.png"
---

<div class='type'>Composable Component</div>



Determinate Material Design linear progress indicator.

<img loading='lazy' class='hero-img' alt='Linear progress indicator image' src='/static/images/material/linear-progress-indicator.png'>

<a id='references'></a>

<div class='sourceset sourceset-common'>Common</div>


```kotlin
@Composable
fun LinearProgressIndicator(
    @FloatRange(from = 0.0, to = 1.0) progress: Float,
    modifier: Modifier = Modifier,
    color: Color = MaterialTheme.colors.primary,
    backgroundColor: Color = color.copy(alpha = IndicatorBackgroundOpacity),
    strokeCap: StrokeCap = StrokeCap.Butt,
)
```


#### Parameters

| | |
| --- | --- |
| progress | The progress of this progress indicator, where 0.0 represents no progress and 1.0 represents full progress. Values outside of this range are coerced into the range. |
| modifier | the `Modifier` to be applied to this progress indicator |
| color | The color of the progress indicator. |
| backgroundColor | The color of the background behind the indicator, visible when the progress has not reached that area of the overall indicator yet. |
| strokeCap | stroke cap to use for the ends of this progress indicator |




<div class='sourceset sourceset-common'>Common</div>


```kotlin
@Composable
fun LinearProgressIndicator(
    modifier: Modifier = Modifier,
    color: Color = MaterialTheme.colors.primary,
    backgroundColor: Color = color.copy(alpha = IndicatorBackgroundOpacity),
    strokeCap: StrokeCap = StrokeCap.Butt,
)
```


#### Parameters

| | |
| --- | --- |
| modifier | the `Modifier` to be applied to this progress indicator |
| color | The color of the progress indicator. |
| backgroundColor | The color of the background behind the indicator, visible when the progress has not reached that area of the overall indicator yet. |
| strokeCap | stroke cap to use for the ends of this progress indicator |




<div class='sourceset sourceset-common'>Common</div>


> **Deprecated** Maintained for binary compatibility

```kotlin
@Composable
fun LinearProgressIndicator(
    progress: Float,
    modifier: Modifier = Modifier,
    color: Color = MaterialTheme.colors.primary,
    backgroundColor: Color = color.copy(alpha = IndicatorBackgroundOpacity),
) = LinearProgressIndicator(progress, modifier, color, backgroundColor, strokeCap = StrokeCap.Butt)
```


<div class='sourceset sourceset-common'>Common</div>


> **Deprecated** Maintained for binary compatibility

```kotlin
@Composable
fun LinearProgressIndicator(
    modifier: Modifier = Modifier,
    color: Color = MaterialTheme.colors.primary,
    backgroundColor: Color = color.copy(alpha = IndicatorBackgroundOpacity),
) = LinearProgressIndicator(modifier, color, backgroundColor, strokeCap = StrokeCap.Butt)
```




## Code Examples
### LinearProgressIndicatorSample
```kotlin
@Composable
fun LinearProgressIndicatorSample() {
    var progress by remember { mutableStateOf(0.1f) }
    val animatedProgress by
        animateFloatAsState(
            targetValue = progress,
            animationSpec = ProgressIndicatorDefaults.ProgressAnimationSpec,
        )
    Column(horizontalAlignment = Alignment.CenterHorizontally) {
        LinearProgressIndicator(progress = animatedProgress)
        Spacer(Modifier.requiredHeight(30.dp))
        OutlinedButton(onClick = { if (progress < 1f) progress += 0.1f }) { Text("Increase") }
    }
}
```

