FigureCard

The one number that matters: a caps label, a KPI figure in tabular mono, a caption that says what the number means, and an optional bar row flush to the bottom. hero sets the figure at 52px and is used once per screen.

import { FigureCard, Sparkbars } from "@puckoops/camelot";
Outstanding
£48,320

Receivable across 9 open invoices, 3 of them past their due date.

NameDescriptionDefaultControl
label*
ReactNode
-
value*
Changing it plays the value tick
number
-
format
(value: number) => string
--
hero
52px; once per screen
boolean
-
caption
ReactNode
-
delta
ReactNode
--
footer
A 40px sparkline or bar row flush to the bottom edge.
ReactNode
--
className
string
-

When to use

Use FigureCard for the hero figure of a screen (hero) or a secondary figure. Exactly one hero per screen.

Examples

Hero

The screen's hero: 52px figure with the year's bars at the foot, the last three in ink.

Outstanding
£48,320

Receivable across 9 open invoices, 3 of them past their due date.

With Delta

A change against the last period, in the delta ink with a glyph for direction.

Hours logged+12.2%
312

Against 278 in August.

Falling

A fall reads in --delta-down; the glyph points down so it survives greyscale.

Studio margin−4.5%
31%

Two fixed-fee projects ran over.

All Variants

One hero and two secondary figures on a 5 + 4 + 3 row.

Outstanding
£48,320

Receivable across 9 open invoices, 3 of them past their due date.

Hours logged+12.2%
312

Against 278 in August.

Studio margin−4.5%
31%

Two fixed-fee projects ran over.