A lightweight scroll library for element detection, smooth scrolling, and parallax animations.
Locomotive Scroll is a lightweight JavaScript library that enables smooth scrolling, detects elements in the viewport, and adds parallax animations to web pages. It solves the problem of creating performant and accessible scroll-based interactions without heavy dependencies.
Frontend developers and designers building modern websites with dynamic scroll effects, parallax animations, and interactive viewport-based triggers.
Developers choose Locomotive Scroll for its minimal bundle size, TypeScript support, built-in accessibility features, and optimized performance through dual Intersection Observers and smart mobile handling.
🛤 Detection of elements in viewport & smooth scrolling with parallax.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
At only 9.4kB gzipped, it minimizes bundle size while enabling smooth scrolling and parallax effects, as stated in the README.
Fully typed for better developer experience and type safety, making it ideal for modern TypeScript projects, as highlighted in the features.
Uses dual Intersection Observers to separate triggers from animations, improving efficiency and performance for scroll-based interactions.
Smart touch detection automatically disables parallax on mobile to prevent jank, ensuring a smooth experience across devices.
Requires CSS imports and HTML data attributes for configuration, which can be cumbersome compared to more plug-and-play animation libraries.
Has fewer pre-built components or community plugins, often necessitating custom development for complex or niche scroll effects.
Smooth scrolling and parallax can still cause lag on low-end devices or with many animated elements, despite the lightweight design.