sigilUI

Cost Calculator

Interactive pricing calculator with configurable sliders and a brand-vs-competitor cost comparison.

@sigil-ui/componentsReact

Preview

Live preview Interactive

Import

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

Usage

const [requests, setRequests] = useState(50000);

<CostCalculator
  sliders={[
    { label: "Requests", value: requests, unit: "req/mo", min: 0, max: 200000, step: 1000, onChange: setRequests },
  ]}
  estimate={{
    brandName: "Sigil Cloud",
    brandCost: requests * 0.0001,
    competitorName: "Competitor",
    competitorCost: requests * 0.0003,
    savingsNote: "Scale to zero when idle — no minimum fee.",
  }}
/>

Custom slider renderer

<CostCalculator
  sliders={sliders}
  estimate={estimate}
  sliderRenderer={(s) => <MyCustomSlider key={s.label} {...s} />}
/>

Props

PropTypeDefaultDescription
slidersCostSlider[]—Configurable input sliders
estimateCostEstimate—Brand and competitor cost data
sliderRenderer(slider: CostSlider) => ReactNode—Custom slider render function
classNamestring—Additional CSS classes

CostSlider

FieldTypeDescription
labelstringSlider label
valuenumberCurrent value
unitstringUnit display (e.g. "req/mo")
min / max / stepnumberRange constraints
onChange(value: number) => voidValue change handler

CostEstimate

FieldTypeDescription
brandNamestringYour brand label
brandCostnumberYour monthly cost
competitorNamestringCompetitor label
competitorCostnumberCompetitor monthly cost
savingsNotestringOptional savings callout