awesome-repositories.com
Blog
awesome-repositories.com

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
Back to brigade/react-waypoint

Open-source alternatives to React Waypoint

30 open-source projects similar to brigade/react-waypoint, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best React Waypoint alternative.

  • camwiegert/in-viewcamwiegert avatar

    camwiegert/in-view

    4,611View on GitHub↗

    in-view is a DOM visibility detector and intersection observer wrapper. It serves as a viewport transition handler that triggers callbacks and events when specific screen elements enter or exit the browser window. The library provides a system for configuring visibility criteria using pixel offsets, percentages, or custom test functions. It includes utilities for observing visibility changes, performing manual visibility evaluations, and checking the current status of an element within the visible area. These capabilities support application patterns such as lazy loading, infinite scrolling,

    JavaScriptjavascriptutilityviewport
    View on GitHub↗4,611
  • 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
  • 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

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
  • janpaepke/scrollmagicjanpaepke avatar

    janpaepke/ScrollMagic

    14,951View on GitHub↗

    ScrollMagic is a DOM scroll interaction framework and animation engine used to map scroll progress to callbacks and visual effects. It functions as a library for triggering animations based on a user's scroll position and the proximity of elements to the viewport. The framework employs a plugin-based system to extend core behavior and customize how elements react during movement. This allows for the development of non-standard scrolling interactions and interactive storytelling experiences where content transitions are tied to the scroll position. The system provides capabilities for viewpor

    TypeScript
    View on GitHub↗14,951
  • 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
  • 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
  • ankeetmaini/react-infinite-scroll-componentankeetmaini avatar

    ankeetmaini/react-infinite-scroll-component

    3,083View on GitHub↗

    This project is a frontend component designed to manage dynamic content loading and scroll-based interactions within web applications. It provides a reusable interface for handling data injection as users navigate through scrollable areas, ensuring that content updates occur automatically based on scroll position or manual user triggers. The component distinguishes itself by supporting both standard downward infinite scrolling and inverse scrolling, which allows for the natural expansion of content history in chat-like interfaces. It offers developers full control over the visual presentation

    TypeScriptcomponentinfinite-listsinfinite-scroll
    View on GitHub↗3,083
  • xrecyclerview/xrecyclerviewXRecyclerView avatar

    XRecyclerView/XRecyclerView

    5,301View on GitHub↗

    XRecyclerView is an Android list component and extension library that adds pull-to-refresh and infinite scrolling behaviors to a standard RecyclerView. It serves as a scrollable mobile UI element designed to manage data-driven lists with support for dynamic headers and footers. The library provides a gesture-based interface for triggering content reloading via a pull-to-refresh widget and implements a mechanism for triggering data fetch callbacks when a user reaches the bottom of a list to enable infinite scrolling. It further supports dynamic list header management and the implementation of

    Javacustom-viewfeatrueload-more
    View on GitHub↗5,301
  • 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
  • prinzhorn/skrollrPrinzhorn avatar

    Prinzhorn/skrollr

    18,426View on GitHub↗

    Skrollr is a dependency-free scroll-driven animation engine and cross-platform frontend library. It functions as a toolkit for linking CSS properties and HTML attributes to scroll positions to create synchronized animations, specifically providing utilities for the interpolation of SVG attributes. The library enables the creation of parallax scrolling and interactive web storytelling by mapping scroll offsets to specific style values. It allows for the development of non-linear movement and dynamic SVG effects through the use of custom HTML attributes that define keyframes. The system covers

    HTML
    View on GitHub↗18,426
  • fredwu/jquery-endless-scrollfredwu avatar

    fredwu/jquery-endless-scroll

    838View on GitHub↗

    This project is a jQuery plugin designed to replace traditional page-based navigation with continuous, dynamic content loading. It enables web interfaces to automatically fetch and append additional data to the document as a user scrolls toward the bottom of the viewport. The library distinguishes itself through granular control over the scroll-based trigger logic, allowing developers to define specific sensitivity thresholds, execution delays, and stopping conditions for content requests. It also provides built-in support for managing the visual state of the interface, including the display

    CoffeeScript
    View on GitHub↗838
  • aljullu/react-lazy-load-image-componentAljullu avatar

    Aljullu/react-lazy-load-image-component

    1,553View on GitHub↗

    This library provides a set of React components designed to improve initial page load performance by deferring the rendering of images and other elements until they enter the browser viewport. By managing content visibility and asset delivery, it reduces unnecessary network data usage and accelerates page rendering. The project distinguishes itself through its use of the browser-native intersection observer to track element visibility, which eliminates the need for manual scroll calculations. It further optimizes performance by consolidating event listeners into a single parent component, min

    JavaScripthocintersection-observerintersectionobserver
    View on GitHub↗1,553
  • 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
  • malihu/malihu-custom-scrollbar-pluginmalihu avatar

    malihu/malihu-custom-scrollbar-plugin

    4,082View on GitHub↗

    This project is a jQuery plugin that replaces native browser scrollbars with themed, customizable versions supporting both vertical and horizontal axes. It provides a navigation layer designed to ensure unified scrolling behavior across mouse, keyboard, and touch-enabled devices. The plugin allows for the modification of scrollbar rails and draggers using CSS and pre-set themes to maintain cross-browser UI consistency. It enables control over the physical feel of navigation through adjustable momentum, snapping, and mouse-wheel acceleration. The system includes capabilities for programmatic

    JavaScript
    View on GitHub↗4,082
  • awesome-reveal/react-awesome-revealawesome-reveal avatar

    awesome-reveal/react-awesome-reveal

    1,189View on GitHub↗

    This library provides a collection of component-based wrappers designed to automate element entrance animations within web interfaces. By utilizing the browser's intersection observer capabilities, it tracks element visibility to trigger visual transitions automatically as content enters the viewport. The library distinguishes itself through declarative orchestration, allowing for the creation of sequential and staggered reveal patterns across groups of elements. It manages the animation lifecycle by dynamically injecting CSS keyframes into the document, ensuring that motion effects are appli

    TypeScriptanimationanimationscss
    View on GitHub↗1,189
  • tholman/elevator.jstholman avatar

    tholman/elevator.js

    6,641View on GitHub↗

    elevator.js is a lightweight JavaScript library that adds a playful, elevator-themed scroll-to-top button to a webpage. When clicked, it smoothly animates the page back to the top while playing a looping elevator music track in the background, masking the transition and adding a whimsical touch to the user experience. The library goes beyond a simple scroll-to-top button by offering configurable scroll duration, the ability to scroll to any specified DOM element with optional vertical padding, and callback hooks that fire user-defined functions at the start and end of the animation. This allo

    JavaScript
    View on GitHub↗6,641
  • 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
  • wickynilliams/headroom.jsWickyNilliams avatar

    WickyNilliams/headroom.js

    10,833View on GitHub↗

    headroom.js is a client-side JavaScript header visibility controller and DOM manipulator. It functions as a scroll-based UI component that hides page headers during downward scrolls and reveals them during upward scrolls to maximize available viewport space. The tool manages dynamic header visibility by monitoring real-time browser scroll events. It optimizes the vertical viewing area of responsive web layouts by toggling the visibility of navigation bars based on the user's scroll direction. The system operates through scroll-position tracking and delta-based state switching to determine mo

    JavaScript
    View on GitHub↗10,833
  • codermjlee/mjrefreshCoderMJLee avatar

    CoderMJLee/MJRefresh

    13,814View on GitHub↗

    MJRefresh is a scroll view interaction library and a set of reusable UI components for implementing pull-to-refresh and infinite scrolling behaviors in mobile user interfaces. It provides customizable refresh indicators and controllers that manage reload callbacks and loading states within scrollable containers. The library allows for the replacement of standard loading indicators with custom images, GIF sequences, and status labels to match specific visual branding. It includes a global configuration store to handle dynamic UI localization and the translation of refresh content across an app

    Objective-Cobjective-crefresh
    View on GitHub↗13,814
  • 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
  • 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
  • jlmakes/scrollrevealjlmakes avatar

    jlmakes/scrollreveal

    22,493View on GitHub↗

    ScrollReveal is a JavaScript library designed to manage scroll-triggered visual transitions for web elements. It functions as a framework for tracking element visibility relative to the browser viewport, allowing developers to apply declarative animation sequences as users scroll through a page. The library provides centralized control over motion design by maintaining a global configuration registry that merges with local element settings to ensure consistent behavior. It distinguishes itself through its lifecycle management capabilities, which include the ability to stagger the reveal of mu

    JavaScriptanimationcssjavascript
    View on GitHub↗22,493
  • toddmotto/echotoddmotto avatar

    toddmotto/echo

    3,698View on GitHub↗

    Echo is a JavaScript lazy loading library designed to defer the rendering of images and background images until they enter the browser viewport. It functions as a viewport-based image loader that replaces data attributes with source URLs to improve initial page load speed and overall frontend performance. The project differentiates itself by acting as a memory-efficient image manager. In addition to loading assets upon visibility, it includes capabilities to unload offscreen images from memory once they leave the viewport to conserve system resources. The library manages browser resource uti

    JavaScript
    View on GitHub↗3,698
  • ivopetkov/responsively-lazyivopetkov avatar

    ivopetkov/responsively-lazy

    1,092View on GitHub↗

    Responsively-lazy is a library designed to optimize web performance by deferring the loading of off-screen assets until they are required by the user. It functions as a utility for reducing initial page payloads by delaying the rendering of images, background images, and HTML content until elements enter the browser viewport. The library distinguishes itself through its automated handling of dynamic content. By utilizing a mutation observer, it monitors the document tree for new elements added after the initial page load and applies lazy loading behaviors to them without requiring manual re-i

    JavaScriptcsshtmljavascript
    View on GitHub↗1,092
  • orizens/ngx-infinite-scrollorizens avatar

    orizens/ngx-infinite-scroll

    1,252View on GitHub↗

    This library provides a directive-based solution for implementing infinite loading patterns within Angular applications. It monitors scroll positions to trigger data fetches when users reach defined distance thresholds, facilitating the continuous loading of content as users navigate through an interface. The implementation decouples scroll tracking from specific elements, allowing it to function with both window-level scrolling and individual overflow-hidden containers. It integrates native browser scroll events into reactive streams and applies throttling logic to manage event frequency, en

    TypeScriptangularangular-directivesangular-library
    View on GitHub↗1,252
  • 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
  • callmecavs/layzr.jscallmecavs avatar

    callmecavs/layzr.js

    5,503View on GitHub↗

    layzr.js is a JavaScript image lazy loading library designed to improve initial page load speed by delaying the download of images until they enter the browser viewport. It functions as a responsive image selector that identifies the most appropriate image source based on browser support and device pixel ratio. The library employs a system for responsive image delivery that evaluates data attributes to select optimal sources. It includes a mechanism for dynamic content tracking, which monitors the document for newly added images to ensure they are automatically added to the loading queue. Th

    JavaScriptimagelazyload
    View on GitHub↗5,503
  • mattdelacdev/wowmattdelacdev avatar

    mattdelacdev/WOW

    9,904View on GitHub↗

    WOW is a JavaScript library and animation engine designed to trigger CSS animations when elements enter the browser viewport during page scrolling. It serves as a tool for orchestrating visual transitions based on the user's scroll position and element visibility. The library functions as a dynamic content animation tool, capable of detecting and animating new elements added to the page after the initial load. This allows visual effects to be applied to dynamically injected content without requiring a page refresh. The system utilizes the Intersection Observer API to detect viewport entry an

    JavaScript
    View on GitHub↗9,904
  • cruip/tailwind-landing-page-templatecruip avatar

    cruip/tailwind-landing-page-template

    4,398View on GitHub↗

    This project is a Tailwind CSS landing page template and responsive marketing website kit. It serves as a React frontend starter providing a set of pre-designed marketing layouts and components for rapid website development. The kit includes an animated UI component library featuring scroll-triggered transitions and dynamic visual effects. It provides themed page templates and design source files for creating marketing sites, professional portfolios, community portals, admin dashboards, and technical documentation sites. The codebase covers a broad range of interface capabilities, including

    TypeScriptfreelandinglanding-page
    View on GitHub↗4,398
  • luis-almeida/unveilluis-almeida avatar

    luis-almeida/unveil

    4,103View on GitHub↗

    Unveil is a client-side image loader and jQuery plugin designed to improve page load speeds by managing when and how images are requested. It functions as a lazy loader that defers the loading of images until they enter the visible browser viewport. The tool includes a high-density display optimizer that detects retina and high-resolution screens. This allows the script to serve high-resolution image assets specifically to compatible devices for improved visual clarity. The project manages frontend assets by using viewport-based intersection detection and data-attribute mapping to swap place

    JavaScript
    View on GitHub↗4,103