Peek

Click to save as you type
No dependencies
Code format

Install with shadcn

Needs a free account token. Get a token

npx shadcn@latest add @movin/toggle-peek

About this component

A switch that previews the change before you make it: on hover the thumb leans toward the other end, the track hints at the next state and a line under the label says what a press will do.

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

Triggers3

  • Hover
  • Click
  • State change

Techniques2

  • CSS transition
  • Gradient

Accessibility

Keyboard and screen readers

A native checkbox with role="switch" inside a <label>, so Space toggles it and the visible text names it; :focus-visible on the input outlines the track, which is aria-hidden. The "what a press will do" line is outside the label and linked with aria-describedby, so keyboard and screen reader users get the same preview as a hover.

Reduced motion

The thumb does not lean or slide.

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

More toggles

See all
PendingGet code
TactileGet code
BalloonGet code
BoltGet code