scroll-snap-fullpage-deck

Installation
SKILL.md

Full-Page Snap Deck with Accessible Fallback

What this builds

A presentation-style page where each section is exactly one viewport tall and the browser snaps cleanly to section boundaries when the user scrolls. A dot-nav indicator shows which section is active and allows click-to-jump navigation. Sections that contain more content than one viewport get an overflow escape hatch instead of clipping.

  • Pure CSS scroll-snap-type: y mandatory for the snap mechanic (no JS scroll hijacking)
  • Each section is height: 100vh with scroll-snap-align: start
  • Dot-nav sidebar showing active section with click and keyboard navigation
  • Entrance animation per section triggered on snap (IntersectionObserver, not scroll event)
  • Overflow fallback: sections with long content switch to scroll-snap-align: none and grow naturally
  • Keyboard: arrow keys navigate between sections, Tab moves focus into section content
  • prefers-reduced-motion: snap still works (it is native behavior), entrance animations disabled
Installs
3
First Seen
Aug 30, 2026
scroll-snap-fullpage-deck — avnehsbhatia/ultraui