Esta página se muestra en inglés. Una traducción al español está en curso.
ConfigsMay 20, 2026·3 min de lectura

Lenis — Smooth Scroll Library for Modern Websites

A lightweight smooth scrolling library that provides buttery-smooth native scroll feel with inertia, perfect for creative websites, parallax effects, and scroll-driven animations.

Listo para agents

Este activo puede ser leído e instalado directamente por agents

TokRepo expone un comando CLI universal, contrato de instalación, metadata JSON, plan según adaptador y contenido raw para que los agents evalúen compatibilidad, riesgo y próximos pasos.

Native · 98/100Política: permitir
Superficie agent
Cualquier agent MCP/CLI
Tipo
Skill
Instalación
Single
Confianza
Confianza: Established
Entrada
Lenis Overview
Comando CLI universal
npx tokrepo install 64ac14fe-548a-11f1-9bc6-00163e2b0d79

Introduction

Lenis is a smooth scroll library that intercepts native browser scrolling and applies inertia-based easing for a fluid, polished feel. It is designed for creative and portfolio websites where scroll-driven animations, parallax effects, and smooth page transitions are essential to the user experience.

What Lenis Does

  • Overrides native scroll behavior with configurable inertia and easing curves
  • Works on both vertical and horizontal scroll containers
  • Integrates with GSAP ScrollTrigger and other scroll-driven animation libraries
  • Provides scroll-to functionality with smooth animated transitions
  • Supports touch devices, trackpads, and mouse wheels with consistent behavior

Architecture Overview

Lenis listens to wheel, touch, and keyboard scroll events and translates them into a virtual scroll position. On each animation frame, it interpolates between the current and target scroll positions using a configurable lerp factor, then applies the result via window.scrollTo or a container's scrollTop. This approach preserves native scroll features like accessibility and find-in-page while adding smooth interpolation.

Self-Hosting & Configuration

  • Install from npm and import into any JavaScript or TypeScript project
  • Create a Lenis instance and drive it with requestAnimationFrame or GSAP ticker
  • Set duration, easing, and lerp to control smoothness and responsiveness
  • Use orientation: 'horizontal' for horizontal scroll layouts
  • Call lenis.scrollTo(target) for programmatic smooth scroll to anchors or positions

Key Features

  • Sub-2 KB gzipped with no dependencies
  • Preserves native accessibility features like keyboard navigation and anchors
  • GSAP ScrollTrigger integration with a single line of setup
  • Touch and trackpad inertia that feels natural on all devices
  • Scroll lock and unlock API for modals and overlays

Comparison with Similar Tools

  • Locomotive Scroll — Feature-rich with parallax built in; Lenis is lighter and more focused on scroll feel
  • GSAP ScrollSmoother — Part of the GSAP paid tier; Lenis is fully open source
  • Smooth Scrollbar — Custom scrollbar approach; Lenis uses native scroll position for better compatibility
  • CSS scroll-behavior: smooth — Browser-native but limited to anchor links with no inertia control

FAQ

Q: Does Lenis affect page accessibility? A: Lenis preserves native scroll position and keyboard navigation. Screen readers and find-in-page continue to work normally.

Q: Can I use Lenis with React or Next.js? A: Yes. Initialize it in a useEffect hook or use the community React wrapper. It works with any framework.

Q: How do I integrate with GSAP ScrollTrigger? A: Connect Lenis to GSAP's ticker with gsap.ticker.add((time) => lenis.raf(time * 1000)) and set ScrollTrigger.defaults({ scroller: document.body }).

Q: Does it work on mobile? A: Yes. Lenis handles touch events and can be configured with different easing for touch devices.

Sources

Discusión

Inicia sesión para unirte a la discusión.
Aún no hay comentarios. Sé el primero en compartir tus ideas.

Activos relacionados