Next Smooth Scroll turns ordinary page scrolling into a premium, inertia-based experience powered by the Lenis engine. Add silky-smooth motion to your entire Framer site — no code required.
Inertia smooth scroll — Silky 60fps motion across wheel, trackpad, and touch, powered by Lenis.
Tune the feel — Control intensity, easing presets (Smooth / Gentle / Linear / Snappy), direction, and scroll speed.
Scroll progress bar — Pin it to the top or bottom with a custom color and height to show reading progress in real time.
Back-to-top button — Fades in past a scroll threshold, with adjustable position, size, radius, and colors.
Accessibility-first — Respects the system reduce motion setting and falls back to native scroll below a mobile breakpoint.
Works out of the box — Smart handling of smooth anchor links, modal scroll-locking, and inner scrollable areas.
The component is invisible on the page and applies site-wide — just drop it anywhere. The progress bar and back-to-top button float at the page level, so they always sit exactly where they should.
Next Smooth Scroll turns ordinary page scrolling into a premium, inertia-based experience powered by the Lenis engine. Add silky-smooth motion to your entire Framer site — no code required.
Inertia smooth scroll — Silky 60fps motion across wheel, trackpad, and touch, powered by Lenis.
Tune the feel — Control intensity, easing presets (Smooth / Gentle / Linear / Snappy), direction, and scroll speed.
Scroll progress bar — Pin it to the top or bottom with a custom color and height to show reading progress in real time.
Back-to-top button — Fades in past a scroll threshold, with adjustable position, size, radius, and colors.
Accessibility-first — Respects the system reduce motion setting and falls back to native scroll below a mobile breakpoint.
Works out of the box — Smart handling of smooth anchor links, modal scroll-locking, and inner scrollable areas.
The component is invisible on the page and applies site-wide — just drop it anywhere. The progress bar and back-to-top button float at the page level, so they always sit exactly where they should.