siddcn
All Components

Progress

Progress indicators for terminal UIs.

Progress

Progress indicators for terminal UIs, including linear, circular, and step variants.

Linear Progress

A horizontal progress bar.

LinearProgress
import { LinearProgress } from 'siddcn';

<LinearProgress value={75} max={100} />

Props

PropTypeDefaultDescription
valuenumber-Current progress value
maxnumber100Maximum value
widthnumber30Width in characters
showPercentagebooleantrueShow percentage label

Circular Progress

A circular/spinner progress indicator.

CircularProgress
import { CircularProgress } from 'siddcn';

<CircularProgress value={50} />

Props

PropTypeDefaultDescription
valuenumber-Current progress (0-100)
size'sm' | 'md' | 'lg''md'Size of the indicator

Step Progress

A multi-step progress indicator.

StepProgress
import { StepProgress } from 'siddcn';

<StepProgress 
  steps={['Setup', 'Configure', 'Install', 'Done']} 
  currentStep={2} 
/>

Props

PropTypeDefaultDescription
stepsstring[]-Array of step labels
currentStepnumber-Current step index (0-based)
showLabelsbooleantrueShow step labels

Animated Progress

Progress bars can be animated:

Animated Progress
import { useState, useEffect } from 'react';
import { LinearProgress } from 'siddcn';

function AnimatedProgress() {
  const [progress, setProgress] = useState(0);

  useEffect(() => {
    const timer = setInterval(() => {
      setProgress(p => (p >= 100 ? 0 : p + 5));
    }, 200);
    return () => clearInterval(timer);
  }, []);

  return <LinearProgress value={progress} />;
}