Latte art

No dependencies
Code format

Install with shadcn

Needs a free account token. Get a token

npx shadcn@latest add @movin/radio-latte

About this component

A latte art picker on a cup seen from above: choosing heart, tulip or rosetta pours the new pattern in from where the milk lands, while the old one swirls away into the crema.

Dependencies
None
Difficulty
Intermediate
Reduced motion
Respected
Theme
Light and dark
Follows page color-scheme

Triggers3

  • Click
  • State change
  • Morph

Techniques4

  • SVG
  • CSS transition
  • Transform only
  • CSS variables

Accessibility

Keyboard and screen readers

A role="radiogroup" with an aria-label around native radio inputs sharing one name, so the arrow keys move the choice and Tab enters the group once; :focus-visible on the input outlines its option.

Reduced motion

The pattern changes at once.

Use it in anything you build, commercial and client work included. Licence

More radios

See all
Plug typeGet code
Tilt-turn windowGet code
CartonGet code
? Which framework? ↑↓
CLIGet code