Spring physics

Drag the sheet

This bottom sheet isn't animated with a fixed duration — every frame it's pulled toward a target by a simulated spring (stiffness + damping), so it overshoots and settles like a real object.

Drag it up/down. Flick it and let go — release velocity decides whether it snaps to peek, half, or full.

Tip: a fast flick down dismisses it.

Now Playing

peek
Spring, not durationPosition chases a target each frame
Velocity-awareYour flick speed carries through
Snap detentspeek · half · full
Rubber-bandResists past the top edge
Backdrop couplingScrim dims with sheet height
Reduced-motion safeHonors the OS setting
y 0 · v 0