Skip to content

KPIPro

15 effects for the kpi family · every one loops · pure CSS unless a card says otherwise

The previews are open to everyone; the code of these effects comes with WunderUI Core and Pro.

Spend$1.84 / $2.00

The colour travels with the value, not at a hard step.

Pure CSSKPI
One design system

One bar wipes in from the left, flips its origin, wipes out to the right.

Pure CSSKPI
DESIGN SYSTEM

The only text effect that genuinely needs JS — about 25 lines swapping glyphs on a timer.

CSS + a few linesKPI
+248+248+248+248

Four copies at staggered delays leave a trail behind the real one.

Pure CSSKPI
Shipittoday

Each word arrives out of a nine-pixel blur on its own delay. Blur plus stagger, no character splitting.

Pure CSSKPI
2026

The shadow is a second copy of the text filled with a repeating diagonal gradient and offset by four pixels. attr() supplies the copy.

Pure CSSKPI
Events / min1,402468078.4%11.2%

Number, delta and sparkline on one timeline: the last place of the figure steps through its digits, the delta swaps to the new reading, and the line draws itself with a head riding the same path through offset-path: path(). pathLength on the stroke is what lets one dash pair work for any path length.

Pure CSSKPI
designmotion

Blur plus an SVG goo filter fuses the two words while they cross over.

Pure CSSKPI
Beautiful motion

background-clip: text over a moving gradient. Four stops and a background-position, and the type carries the colour instead of sitting on it.

Pure CSSKPI
012340987603692%

One column of digits per place, each sliding at its own speed. No counter maths.

Pure CSSKPI

Layers light up in order to show strength. The signal-bars pattern, used as a live indicator rather than a static one.

Pure CSSKPI
Sessions4,812

Under 400 ms in production; a sparkline sits beside a number, not centre stage.

Pure CSSKPI
Build fasterbettercalmer

One slot, three words taking turns. The words are grid-stacked so they stay in flow and the slot keeps a real baseline; clip-path does the hiding, because overflow: hidden would take that baseline away again.

Pure CSSKPI
Deploys01201234012345678Regions01012Checks01234567890123456

A stat row that counts on entry. Each place is a column of the digits it passes through, moved by a steps() timer with one step per digit, so the last place runs fastest and they all land together. The reset happens while the row is faded out, which is why you never see it count back down.

Pure CSSKPI

The indeterminate bar. Animating `left` rather than `transform` keeps the segment inside the rounded track at both ends.

Pure CSSKPI