KQ-968 · HEALTH/CHECK
Health Check
The list a deploy has to get through before anyone believes it: a running probe turns its ring at a constant rate, because a spring would imply it is nearly done, a pass stamps on snap from 1.06 and draws its tick on flick, and a failure stamps its cross on snap and unfolds its own detail to a ResizeObserver-measured height on glide. Under the head a rule fills on glide to the share of checks that have settled, and the counts beside it cross-fade in one cell so a fast sequence never blanks the number. The checks are a roving-tabindex list where Arrow Up and Down step, Home and End jump, and Enter or Space folds a row.
none
Install
One command — the source lands in your repo. Or copy it from the Code tab.
$ pnpm dlx shadcn@latest add @kinetiq/health-check
Props
- ref
- React.Ref<HTMLDivElement>
- default —
- Reaches the root group element.
- checks
- HealthProbe[]
- default —
- The checks, in run order: id, probe name, target, status, and once settled the latency, response and an optional detail line.
- open / defaultOpen
- string[]
- default []
- Controlled or initial set of expanded check ids.
- onOpenChange
- (ids: string[]) => void
- default —
- Fires from the press or key that folded or unfolded a check.
- onSummaryChange
- (summary: HealthSummary) => void
- default —
- The whole reading — passed, failed, running, waiting, settled and total — reported from the first commit as well, because it is a state.
- onCheckSelect
- (id: string) => void
- default —
- Fires when a row is activated by pointer or keyboard.
- formatMs
- (ms: number) => string
- default ms under a second, seconds to two decimals above
- Renders every latency, so a host changes units in one place.
- label
- string
- default "Health checks"
- Names the list for assistive technology.
- className
- string
- default —
- Merged onto the root element's classes.
| Prop | Type | Default | Description |
|---|---|---|---|
| ref | React.Ref<HTMLDivElement> | — | Reaches the root group element. |
| checks | HealthProbe[] | — | The checks, in run order: id, probe name, target, status, and once settled the latency, response and an optional detail line. |
| open / defaultOpen | string[] | [] | Controlled or initial set of expanded check ids. |
| onOpenChange | (ids: string[]) => void | — | Fires from the press or key that folded or unfolded a check. |
| onSummaryChange | (summary: HealthSummary) => void | — | The whole reading — passed, failed, running, waiting, settled and total — reported from the first commit as well, because it is a state. |
| onCheckSelect | (id: string) => void | — | Fires when a row is activated by pointer or keyboard. |
| formatMs | (ms: number) => string | ms under a second, seconds to two decimals above | Renders every latency, so a host changes units in one place. |
| label | string | "Health checks" | Names the list for assistive technology. |
| className | string | — | Merged onto the root element's classes. |