sigilUI

Progress Ring

Concentric multi-ring progress indicator inspired by Apple Watch activity rings.

@sigil-ui/componentsReact

Preview

Live preview Interactive

Import

import { ProgressRing } from "@sigil-ui/components";

Usage

<ProgressRing
  tracks={[
    { label: "Move", value: 78, max: 100 },
    { label: "Exercise", value: 45, max: 100 },
    { label: "Stand", value: 92, max: 100 },
  ]}
  thickness={8}
  gap={4}
/>

Props

PropTypeDefaultDescription
tracksProgressRingTrack[]—Ring tracks with label, value, and max
widthnumber160SVG width
heightnumber160SVG height
thicknessnumber8Ring thickness in px
gapnumber4Gap between concentric rings
showLegendbooleantrueShow legend with percentages

Token integration

CSS VariablePurpose
--s-errorFirst (outermost) ring
--s-successSecond ring
--s-infoThird ring
--s-borderTrack background
--s-textLegend percentage
--s-text-mutedLegend label
--s-font-monoPercentage font family