Griffo — Kerning-aware text splitting

Animate your text,
not your spacing

npm i griffo

Kerning-aware text splitting.

Here‘s the Thing

Text splitting sounds simple: wrap each character in a <span>.

But fonts use kerning — subtle spacing adjustments between character pairs. Wrap each character in its own element and this spacing breaks.

Most splitting libraries skip this, including GSAP's SplitText plugin and SplitType:

AVA WAVE (kerning test)
GSAP SplitText
AVA WAVE (kerning test)
SplitType
AVA WAVE (kerning test)
Griffo
Press ‘Split’ to see the difference. Hover (or tap) the Griffo text to highlight compensated chars and see the compensation value.

Griffo measures kerning between character pairs and applies margin adjustments so split text keeps the original spacing.

The Good Stuff

Quick Examples

Vanilla

React

Motion

Morph

Griffo — after Francesco Griffo, the punchcutter who carved type into steel so letterforms could be set as individual pieces. He split metal; we split markup. His story is worth knowing.