awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
Back to scroll-out/scroll-out

Open-source alternatives to Scroll Out

30 open-source projects similar to scroll-out/scroll-out, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Scroll Out alternative.

  • mciastek/salmciastek avatar

    mciastek/sal

    3,693View on GitHub↗

    Sal is a lightweight vanilla JavaScript library designed to trigger CSS animations and execute custom logic as elements enter the browser viewport. It serves as a programmatic wrapper for the Intersection Observer API, providing a viewport trigger system to handle visibility thresholds and scroll-based animations. The library operates as a dependency-free frontend tool that manages animations through a class-based trigger mechanism and the injection of CSS custom properties. It includes a system for tracking dynamic content, allowing the observer to be updated to include new elements injected

    HTML
    View on GitHub↗3,693
  • jscottsmith/react-scroll-parallaxjscottsmith avatar

    jscottsmith/react-scroll-parallax

    2,986View on GitHub↗

    React Scroll Parallax is a component library and JavaScript animation tool for creating scroll-driven visual effects and layered depth in web applications. It supplies shared scroll metrics and controller access down the component tree through context providers, applying hardware-accelerated style changes such as translation, rotation, and opacity to animate elements. The system tracks element positions relative to viewport boundaries to calculate continuous scroll ratios while batching calculations to sync with browser refresh rates and automatically recomputing layouts during dynamic content

    TypeScriptanimationbannercomponent
    View on GitHub↗2,986
  • dixonandmoe/rellaxdixonandmoe avatar

    dixonandmoe/rellax

    7,143View on GitHub↗

    Rellax is a dependency-free vanilla JavaScript library and frontend utility used to create parallax web design effects. It functions as a scroll-based animation tool that moves page elements at different speeds to produce a sense of depth and layered motion. The library supports both vertical and horizontal parallax tracking for panoramic layouts and allows for motion speed control. It includes breakpoint-aware speed mapping to adjust movement based on screen width and provides viewport centering to position elements relative to the center of the screen. Beyond basic motion, the tool manages

    HTML
    View on GitHub↗7,143

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Find more with AI search
  • rrutsche/react-parallaxrrutsche avatar

    rrutsche/react-parallax

    876View on GitHub↗

    React Parallax is a React animation component library that creates multi-speed scrolling background depth effects. It computes relative scroll positions within viewports to translate raw page offsets into normalized animation progress values, applying hardware-accelerated translation and scaling styles to DOM nodes for smooth visual movement. The library supports rendering background images and arbitrary visual elements that shift positions at different speeds relative to foreground content. It provides dynamic Gaussian blur filter transitions that interpolate based on current scroll velocity

    TypeScript
    View on GitHub↗876
  • ant-design/ant-motionant-design avatar

    ant-design/ant-motion

    4,613View on GitHub↗

    This is a React animation library providing a collection of components for creating choreographed motion, complex transitions, and SVG morphing. It functions as a motion design specification and a UI component animation wrapper system used to apply 3D transforms, Bezier curves, and entry-exit transitions to interface elements. The project includes a scroll-driven animation suite for synchronizing UI movements and parallax effects with the viewport position, as well as an SVG motion framework for animating paths, drawing lines incrementally, and interpolating coordinates for shape morphing. I

    JavaScriptanimationant-motionjavascript
    View on GitHub↗4,613
  • terwanerik/scrolltriggerterwanerik avatar

    terwanerik/ScrollTrigger

    3,964View on GitHub↗

    ScrollTrigger is a JavaScript library and DOM scroll event manager designed to execute callbacks and toggle CSS classes when elements enter or exit the browser viewport. It functions as a high-level interface for the Intersection Observer API and a system for initiating visual transitions and asynchronous tasks based on an element's position relative to the viewport. The tool allows for the definition of precise trigger points using pixel or percentage offsets to control exactly when events fire. It manages scroll-driven visual animations and lazy loading implementations by tracking visibilit

    JavaScriptanimationcsshtml-element
    View on GitHub↗3,964
  • thebuilder/react-intersection-observerthebuilder avatar

    thebuilder/react-intersection-observer

    5,537View on GitHub↗

    react-intersection-observer is a React implementation of the Intersection Observer API designed to track when DOM elements enter or leave the browser viewport. It provides a wrapper and a set of hooks for monitoring element visibility and triggering callbacks when content becomes visible to the user. The library includes a mechanism for DOM occlusion detection to determine if an element is covered by other components or hidden by CSS filters. It also features a polyfill wrapper that provides visibility fallbacks for browsers that do not natively support intersection observer capabilities. Th

    TypeScript
    View on GitHub↗5,537
  • greensock/gsapgreensock avatar

    greensock/GSAP

    23,877View on GitHub↗

    GSAP is a comprehensive JavaScript animation library designed for orchestrating complex motion sequences and interactive user interfaces. It provides a robust property-interpolation engine that calculates intermediate values for CSS styles, attributes, and numeric properties, enabling smooth visual transitions across web elements. The framework is built on a core architecture that manages animation lifecycles, timeline-based sequence orchestration, and virtual property interception to ensure precise control over motion. The library distinguishes itself through a modular, plugin-based extensib

    JavaScriptanimationgsapjavascript
    View on GitHub↗23,877
  • electerious/basicscrollelecterious avatar

    electerious/basicScroll

    3,607View on GitHub↗

    BasicScroll is a standalone scroll-driven animation library that updates CSS custom properties, element styles, and CSS properties dynamically based on absolute or relative viewport scroll positions. It functions as an animation engine designed to build custom parallax scrolling experiences and fluid visual effects on both mobile and desktop viewports. The library supports custom scroll range definitions anchored directly to specific document elements, alongside callback executions that trigger user-defined functions with live progress data and state percentages as the viewport enters or leav

    JavaScript
    View on GitHub↗3,607
  • jalxob/cool-kittenjalxob avatar

    jalxob/cool-kitten

    1,373View on GitHub↗

    Cool-kitten is a web framework designed for building responsive layouts that incorporate multi-speed parallax scrolling effects and automated asset optimization. At its core, the project functions as a scroll-driven animation engine that synchronizes DOM element transformations with user scroll coordinates using custom easing functions. The framework integrates a fluid grid layout system alongside multi-speed layered parallax capabilities, enabling background elements to move at different relative speeds than foreground content to produce visual depth. Additionally, it includes build-time ass

    JavaScript
    View on GitHub↗1,373
  • hilongjw/vue-lazyloadhilongjw avatar

    hilongjw/vue-lazyload

    8,006View on GitHub↗

    vue-lazyload is a Vue.js image lazy loading plugin and frontend asset optimizer. It serves as a viewport visibility observer that defers the loading of images and components until they enter the browser viewport to reduce initial page load times. The project functions as a progressive image loader by managing image placeholders and implementing dynamic source switching. It uses a browser API to monitor when elements enter the viewport, avoiding expensive scroll event listeners to maintain performance. The plugin provides capabilities for image loading state tracking, including custom placeho

    JavaScriptlazyloadvuevue-lazyload
    View on GitHub↗8,006
  • meliorence/react-native-snap-carouselmeliorence avatar

    meliorence/react-native-snap-carousel

    10,519View on GitHub↗

    This project is a cross-platform mobile carousel component for creating swipeable image and content sliders. It functions as a virtualized list component that maintains performance by removing off-screen elements and utilizes a native-driver animation library to map scroll offsets to style properties on the native thread for lag-free transitions. The library provides a parallax image gallery capable of shifting images relative to scroll progress to create a sense of depth. It also features a layout system that supports right-to-left orientations for languages such as Arabic and Hebrew. Capab

    JavaScriptadvanced-effectscarouselflatlist-based
    View on GitHub↗10,519
  • callstack/linariacallstack avatar

    callstack/linaria

    12,335View on GitHub↗

    Linaria is a zero-runtime CSS-in-JS library and static CSS generator. It evaluates JavaScript expressions at build time to extract styles from tagged template literals into standalone, static CSS files, removing the need for a runtime style injection engine. The library distinguishes itself by mapping component props to CSS custom properties, enabling dynamic styling and runtime property updates without regenerating stylesheets. It utilizes a build-time evaluation engine to resolve interpolations and a hashing system to generate scoped class names that prevent style collisions. The project c

    TypeScript
    View on GitHub↗12,335
  • uikit/uikituikit avatar

    uikit/uikit

    18,534View on GitHub↗

    UIkit is a CSS front-end framework and accessible UI component library designed for building responsive web interfaces. It provides a comprehensive set of styling classes and modular components alongside a JavaScript interaction toolkit for managing behavioral elements. The framework includes native support for internationalized web interfaces, featuring multi-locale text translation and right-to-left layout directions. It employs a responsive layout engine that uses flexible grids, adaptive breakpoints, and container widths to align content across different screen sizes. The toolkit covers

    HTML
    View on GitHub↗18,534
  • civiccc/react-waypointciviccc avatar

    civiccc/react-waypoint

    4,046View on GitHub↗

    react-waypoint is a React component and viewport tracking tool that executes functions based on the visibility of a DOM node within a scrollable area. It monitors when elements enter or leave the browser viewport or a specified scroll container to trigger callbacks. The project enables the implementation of infinite scrolling, asset lazy loading, and scroll-triggered animations. It allows for custom scroll container definitions and viewport boundary configurations using offsets to determine exactly when events fire. The tool provides element position tracking and visibility monitoring for bo

    JavaScript
    View on GitHub↗4,046
  • michalsnik/aosmichalsnik avatar

    michalsnik/aos

    28,075View on GitHub↗

    AOS is a scroll-triggered animation library that controls the execution, timing, and mapping of CSS transitions based on element visibility and browser viewport intersections. It functions as a DOM element animation controller and a viewport intersection trigger to initiate visual transitions as elements enter the screen. The library utilizes a custom CSS transition bridge to map scroll-based triggers to CSS class changes, enabling integration with external styling frameworks. It supports anchor-based animation triggers, allowing the visibility of one page element to act as the trigger point

    JavaScript
    View on GitHub↗28,075
  • tuupola/lazyloadtuupola avatar

    tuupola/lazyload

    8,727View on GitHub↗

    Lazyload is a JavaScript plugin that defers the loading of images until they scroll into the viewport, using the browser's Intersection Observer API to detect visibility. It is designed to speed up initial page load and save bandwidth by delaying off-screen images, and includes a jQuery-compatible wrapper for drop-in integration with existing jQuery code. The plugin distinguishes itself through support for responsive images, loading different sources based on screen size, and a blur-up placeholder effect that shows a low-resolution image that transitions into the sharp version once fully load

    JavaScript
    View on GitHub↗8,727
  • vuetifyjs/vuetifyvuetifyjs avatar

    vuetifyjs/vuetify

    41,003View on GitHub↗

    This project is a comprehensive UI toolkit that provides a declarative, reactive framework for building modular web interfaces. It centers on a component-based architecture that maps application state to rendered elements, utilizing a twelve-point flexbox grid system and nested containers to manage complex layouts. The library ensures consistent behavior across large-scale applications by providing centralized configuration for component defaults, themes, and global design tokens. What distinguishes this framework is its deep integration of Material Design principles alongside a highly flexib

    TypeScriptjavascriptmaterialmaterial-components
    View on GitHub↗41,003
  • alexfoxy/laxxxalexfoxy avatar

    alexfoxy/laxxx

    10,484View on GitHub↗

    laxxx is a lightweight JavaScript framework for creating scroll-driven animations and DOM element bindings. It functions as a CSS interpolation engine and animation utility that maps numeric driver values to HTML attributes and styles in real time. The framework specializes in linking visual properties to scroll position and velocity, featuring built-in inertia to smooth out transitions and prevent abrupt visual jumps. It utilizes a driver-based system to generate numeric streams from inputs like mouse movement or time, which are then transformed into CSS outputs through easing equations and

    JavaScript
    View on GitHub↗10,484
  • locomotivemtl/locomotive-scrolllocomotivemtl avatar

    locomotivemtl/locomotive-scroll

    8,807View on GitHub↗

    Locomotive Scroll is a JavaScript library and toolkit for managing DOM scroll interactions, featuring a smooth scroll motion controller and a parallax scrolling engine. It provides a system for implementing fluid scrolling and tracking element visibility within the viewport. The library creates depth and motion by moving elements at different speeds relative to the scroll position. It includes a viewport visibility tracker used to initiate visual transitions and animations when specific elements enter the browser viewport. The toolkit covers programmatic scroll control, dynamic element regis

    JavaScript
    View on GitHub↗8,807
  • markdalgleish/stellar.jsmarkdalgleish avatar

    markdalgleish/stellar.js

    4,592View on GitHub↗

    Stellar.js is a JavaScript parallax library and scroll-based motion framework used to coordinate DOM element positioning and CSS transforms. It functions as a positioning tool that calculates real-time coordinate shifts for background images and foreground items based on scroll triggers. The library utilizes a CSS transform animation engine to ensure movement is hardware-accelerated on both mobile and desktop browsers. It creates depth effects by applying different movement speeds to elements relative to the natural scroll rate. The framework covers a range of motion capabilities, including

    JavaScript
    View on GitHub↗4,592
  • russellsamora/scrollamarussellsamora avatar

    russellsamora/scrollama

    5,982View on GitHub↗

    Scrollama is a JavaScript library for scroll-driven storytelling that uses the browser's native IntersectionObserver API to trigger step-based callbacks and animations as the user scrolls through a page. It pins graphic elements using CSS sticky positioning while scrolling through associated text steps, enabling side-by-side narrative experiences without JavaScript-driven layout calculations. The library provides a configurable offset threshold system that accepts a single global offset or per-element data-attribute offsets to define the viewport position that triggers step events. It reports

    HTML
    View on GitHub↗5,982
  • afarkas/lazysizesaFarkas avatar

    aFarkas/lazysizes

    17,723View on GitHub↗

    lazysizes is a JavaScript lazy loading library and DOM visibility observer that defers the loading of images and iframes until they enter the browser viewport. It functions as a responsive image optimizer and SEO friendly asset loader designed to reduce initial page load times while maintaining search engine visibility. The project calculates optimal image sizes and handles srcset and picture elements to deliver the most appropriate asset based on device resolution and layout. It includes a mechanism for low-quality image placeholders and applies CSS classes during the loading process to trig

    JavaScriptjavascriptlazy-evaluationlazyload
    View on GitHub↗17,723
  • alexfoxy/lax.jsalexfoxy avatar

    alexfoxy/lax.js

    10,493View on GitHub↗

    Lax.js is a lightweight JavaScript library designed for creating scroll-driven animations and interactive motion effects on web pages. It functions as a frontend interaction framework that enables developers to apply dynamic visual transformations to elements as they enter or exit the viewport. The library distinguishes itself by decoupling animation logic from core scripts through a declarative mapping system that utilizes data attributes. It processes scroll progress through a functional pipeline, mapping vertical offsets to specific CSS property ranges using linear interpolation to ensure

    JavaScriptanimationcsseffects
    View on GitHub↗10,493
  • greensock/greensock-jsgreensock avatar

    greensock/GreenSock-JS

    25,916View on GitHub↗

    GreenSock-JS is a JavaScript animation library and framework designed for animating CSS properties, SVG attributes, and JavaScript values. It functions as a scroll-driven animation engine and a sequencing system for coordinating multiple animations into a single timeline for precise execution across web browsers. The project provides tools for creating interactive scroll effects by linking animation progress to a user's scroll position. It also includes a responsive animation framework that adjusts behaviors and timing based on media queries to maintain consistency across different device scr

    JavaScript
    View on GitHub↗25,916
  • archriss/react-native-snap-carouselarchriss avatar

    archriss/react-native-snap-carousel

    10,520View on GitHub↗

    This project is a mobile UI component library providing a cross-platform carousel component for sliding images and content. It functions as a touch-based swiper interface that allows users to browse lists of items through swipe gestures. The library includes a specialized parallax image slider that shifts background images at different speeds to create a sense of depth. It provides a swiping interface component capable of handling large lists of items across both horizontal and vertical orientations. The toolset covers carousel layout management, position indicators to communicate the curren

    JavaScript
    View on GitHub↗10,520
  • csstickyheaderflowlayout/csstickyheaderflowlayoutCSStickyHeaderFlowLayout avatar

    CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout

    5,039View on GitHub↗

    CSStickyHeaderFlowLayout is a custom layout subclass for iOS collection views designed to implement sticky section headers and parallax effects. It manages the positioning of headers to ensure they remain pinned to the top of the viewport as the user scrolls through a list. The layout utilizes push-based displacement to remove a pinned header once the subsequent section header reaches the top of the screen. It also incorporates linear interpolation to move header imagery at a different rate than the scroll offset, creating a visual sense of depth. These capabilities are achieved through dyna

    Objective-C
    View on GitHub↗5,039
  • apoorvsaxena/lozad.jsApoorvSaxena avatar

    ApoorvSaxena/lozad.js

    7,497View on GitHub↗

    lozad.js is a JavaScript lazy loading library and viewport-based media loader. It serves as a dependency-free wrapper around the Intersection Observer API to defer the loading of images and iframes until they enter the browser viewport. The project functions as a responsive image loader that optimizes page speed by delivering the most appropriate image sizes and formats based on the user's screen. It includes capabilities for responsive image optimization and layout stabilization through the use of image placeholders to prevent content shifts. The library manages the full lifecycle of deferr

    JavaScript
    View on GitHub↗7,497
  • ifttt/jazzhandsIFTTT avatar

    IFTTT/JazzHands

    6,367View on GitHub↗

    JazzHands is a UIKit framework providing a scroll-driven animation engine and a paging layout manager. It enables the binding of view properties to timelines of keyframes, allowing visual transitions to be synced with real-time scroll offsets or gesture data. The project distinguishes itself through a value-interpolation engine that calculates intermediate property states. This allows animation progress to be driven by external input values, mapping view attributes to a timeline based on a floating point progress indicator. The framework also includes a system for organizing views within pag

    Objective-C
    View on GitHub↗6,367
  • imakewebthings/waypointsimakewebthings avatar

    imakewebthings/waypoints

    10,317View on GitHub↗

    Waypoints is a JavaScript library designed for monitoring scroll positions and managing viewport-based triggers. It provides utilities to execute functions when page elements enter or exit the visible browser area, track specific scroll offsets, and implement sticky element pinning. The library includes specialized tools for building infinite scrolling interfaces that fetch and append content to replace traditional pagination. It also manages the positioning of elements that transition to a fixed screen location once a specific scroll threshold is reached. The system covers broader capabilit

    JavaScript
    View on GitHub↗10,317