Rubbing

No dependencies
Code format

Install with shadcn

Needs a free account token. Get a token

npx shadcn@latest add @movin/checkbox-rubbing

About this component

Paper laid over a raised tick: rub across it with your pointer and graphite builds up until the tick shows through, like a coin rubbing. Once enough is rubbed the box is checked; a click or Space does the whole rub for you.

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

Triggers3

  • Click
  • State change
  • Mouse tracking

Techniques4

  • SVG
  • Event position
  • Mouse tracking
  • CSS transition

Accessibility

Keyboard and screen readers

A native checkbox inside a <label>, so Space toggles it and the visible label names it, and rubbing is only an extra way in; :focus-visible on the input outlines the paper.

Reduced motion

The sweep is instant.

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

More checkboxes

See all
ShippingMira Patel14 Harbour RoadBristol BS1 4QA
Same addressGet code
Smart guidesGet code
SnowfallGet code
SprinklesGet code