A standalone JavaScript library for creating parallax scrolling and scroll-driven animations using CSS-like data attributes.
skrollr is a standalone JavaScript library for creating parallax scrolling and scroll-driven animations on websites. It enables developers to animate CSS properties and HTML attributes based on scroll position using simple data attributes in HTML, eliminating the need for complex JavaScript code. The library works on both desktop and mobile devices, providing a lightweight solution for interactive scrolling effects.
Frontend developers and designers who want to add scroll-based animations and parallax effects to websites without relying on jQuery or heavy frameworks. It's ideal for those who prefer a declarative, CSS-like approach to animations.
Developers choose skrollr for its minimal footprint (about 12k minified), ease of use with plain HTML/CSS, and robust support for both desktop and mobile scrolling. Its unique data-attribute syntax keeps animations tightly coupled with elements, improving maintainability compared to JavaScript-driven alternatives.
Stand-alone parallax scrolling library for mobile (Android + iOS) and desktop. No jQuery. Just plain JavaScript (and some love).
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 12k minified, it adds minimal overhead to page loads, as noted in the README's description.
Animations are defined directly in HTML using intuitive data attributes that mirror CSS properties, keeping code declarative and maintainable.
Supports both absolute and relative keyframes, allowing flexible triggers based on scroll position or element viewport placement.
Includes touch-based scrolling simulation for mobile devices, though it requires a dedicated #skrollr-body element as per the setup instructions.
The README warns that active development stopped in 2014, risking compatibility issues with modern browsers and no future updates.
The author admits mobile support 'always sucked' and compromises UX, making it unreliable for seamless touch interactions.
Only supports rgb/hsl color formats (not hex) and requires consistent units across animations, as stated in the limitations section.