Sankey
ProBands whose width shows how much flows from one stage to the next.
pnpm dlx shadcn@latest add @caliper/sankey| From to | Value |
|---|---|
| Subscriptions to Revenue | 62 |
| Services to Revenue | 21 |
| Marketplace to Revenue | 9 |
| Revenue to Cost of revenue | 24 |
| Revenue to Gross profit | 68 |
| Gross profit to R&D | 23 |
| Gross profit to Sales and marketing | 19 |
| Gross profit to G&A | 8 |
| Gross profit to Operating profit | 18 |
When to use #
Use it for
- Tracing where visitors, money or tickets go between stages.
- Drop-off and routing are the point.
Skip it when
- The flow is a simple A to B; a bar chart is clearer.
- There are loops or more than a handful of stages.
Installation #
pnpm dlx shadcn@latest add @caliper/sankey
Adds its 3 files to components/ui/, each with its own stylesheet, and installs their packages. Pro installs with your access token, set up once per project. See Pro access. The first part also adds Caliper UI’s tokens; import them once as in Installation.
Usage #
Import it from your copy of the source. The example behind the preview comes with the source.
import { Sankey } from "@/components/ui/sankey"
The worked example comes with Pro
The 35-line example behind the preview opens here with a Pro or Team licence.
API reference #
Sankey
component
Accessibility #
It exposes group, img and status semantics, with aria-label and aria-busy kept in step with state. Changes that matter are announced through a live region.
No custom key handling; Tab and the native activation keys do the work.
Motion #
It declares no animation in its component source. Any transition comes from its stylesheet, which uses the duration tokens that collapse to instant under prefers-reduced-motion.