Skip to content
Page

Progress

Bar that shows how much of a task is done.

Uploading · 60%
import { Progress } from "@pelagornis/page/components";

The preview above renders this file. Copy it into src/components/ to start from it.

src/components/ProgressExample.tsx
import { Progress, Stack, Text } from "@pelagornis/page/components";
export default function ProgressDemo() {
return (
<Stack gap="sizeMedium" className="w-full max-w-sm">
<Stack gap="sizeXXSmall">
<Text variant="captionMd">Uploading · 60%</Text>
<Progress value={60} max={100} aria-label="Upload" />
</Stack>
<Progress value={30} size="lg" aria-label="Large" />
</Stack>
);
}

Progress can be written straight in an .mdx page. Import it below the frontmatter. It renders on the server, so no client directive is needed.

src/content/docs/example.mdx
---
title: Example
---
import { Progress } from "@pelagornis/page/components";
<Progress value={60} aria-label="Upload" />

pageMarkdoc() registers a progress tag for this component. Add the preset once in markdoc.config.mjs (see Use in Markdoc), then write the tag in any .mdoc page.

src/content/docs/example.mdoc
{% progress value=60 ariaLabel="Upload" /%}

Attributes use the same names and values as the React props.

Values the component accepts for each variant prop.

PropValues
sizesm lg

Parts of the component and the data-refineui role each one renders.

PartRole
rootprogress