30 open-source projects similar to ankeetmaini/react-infinite-scroll-component, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best React Infinite Scroll Component alternative.
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
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
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
react-waypoint is a set of React components and wrappers designed to execute callbacks when specific DOM elements enter or exit the visible screen area. It functions as a viewport visibility tracker that monitors when elements cross predefined spatial boundaries. The project provides a scroll trigger component and event wrapper that allow for custom offset configurations to account for fixed UI elements. These tools can be configured to use a specific DOM node or the global window as the scrollable ancestor for visibility calculations. The library covers several implementation patterns, incl
SVPullToRefresh is a library for adding pull-to-refresh and infinite scrolling behaviors to UIKit scroll views on the iOS platform. It provides specialized user interface components that enable manual content refreshing and pagination within scrollable views. The library implements mechanisms to trigger data loading actions when a user pulls a scroll view from the top or reaches the bottom of a scrollable area. These triggers allow for syncing the latest information or appending more content to create continuous feeds.
Legend List is a high-performance list rendering library designed to display massive collections of data with varying item heights. It utilizes windowed virtualization and a measured-height cache to render only the visible portion of a list, preventing lag and maintaining a smooth frame rate. The library specializes in bidirectional infinite scrolling and stable scroll anchoring, which prevents visual jumps when content is prepended to the top of a list. It includes specific alignment capabilities to keep content pinned to the bottom, supporting the layout requirements of chat interfaces. To
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
This project is a client-side library for rendering responsive, animated SVG progress indicators. It functions as a frontend UI component and vector animation library designed to visualize completion status through linear, circular, and radial shapes. The library is distinguished by its support for custom vector path geometries, allowing users to define specific SVG path data to create specialized shapes. It uses a vector-based rendering approach to ensure that indicators remain sharp across different screen resolutions. The tool covers a range of capabilities including both static and anima
Infinite Scroll is a JavaScript library that automatically loads and appends the next page of content when a user scrolls near the bottom of a container, or optionally when they click a button. It provides scroll-based pagination that fetches and inserts subsequent pages of content, with URL-driven content loading that determines next page URLs from selectors, templates, or custom functions. The library integrates with browser history, updating the URL and history state as new pages load while preserving scroll position so each page state is bookmarkable and refreshable. It is compatible with
React Virtuoso is a React component library for rendering large datasets efficiently through virtualized lists, grids, tables, and chat interfaces. It automatically measures variable-height items at runtime, computes accurate scroll offsets without requiring fixed sizes, and renders only the items within the visible viewport plus a configurable buffer zone. The library manages scroll position through a state machine that tracks direction, position, and anchor items to handle auto-scroll, sticky headers, and bidirectional loading. The library distinguishes itself with specialized components fo
Magnific-Popup is a JavaScript lightbox library and frontend UI component used to display images, videos, and remote HTML content within a responsive overlay window. It functions as a responsive media gallery, providing a dimmed background to focus viewing on specific content. The library distinguishes itself through its ability to fetch and render remote HTML via asynchronous AJAX requests and its support for thumbnail zoom transitions. It includes a gallery system that groups multiple media items with directional controls, progress counters, and background preloading of adjacent assets to e
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
medium-zoom is a JavaScript image zoom library and frontend UI component that creates a full-screen image expansion effect when a user clicks a picture in a web browser. It functions as a responsive image overlay that transforms embedded media into high-definition zoomed views. The library supports swapping low-resolution image sources for high-definition versions specifically when the zoom effect is triggered. It allows for external elements to trigger the expansion and provides the ability to dynamically manage which images or groups of elements are zoomable. Users can customize the zoom o
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
SmartRefreshLayout is a pull-to-refresh framework and gesture interaction library for Android. It provides a scroll view wrapper that integrates interactive refresh headers and loading footers into mobile user interfaces, coordinating synchronized scrolling and touch events. The project features a pluggable architecture for custom refresh indicators and secondary refresh mechanisms. It utilizes damping-based gesture translation and overscroll rebound mechanisms to manage the tactile feel of drag resistance and physics-based animations. The library covers a broad range of interaction logic, i
This library is a Vue.js component system designed for managing transient visual feedback and toast-style alerts. It provides a framework for rendering non-blocking messages that inform users about application events or status updates without interrupting their current workflow. The system distinguishes itself through a decoupled architecture that uses a centralized event bus for triggering notifications from any part of an application. It supports complex layout requirements by routing alerts into named containers and rendering them via portals, which ensures that notifications remain visibl
AMScrollingNavbar is a Swift UI component and controller designed to synchronize the movement of a UINavigationBar with the scroll position of a UIScrollView. It acts as a navigation bar behavior modifier that allows the navigation bar to hide or reveal itself dynamically based on user scroll interactions. The project provides a mechanism to coordinate the movement of multiple interface elements, enabling supplementary views such as toolbars or tab bars to slide in synchronization with the navigation bar. It utilizes offset-based translation and customizable scroll speeds to control how quick
Vue-toasted is a notification library designed for Vue applications that provides a programmatic interface for displaying temporary, responsive status alerts. It functions as a global plugin, allowing developers to trigger and manage notifications from any component within an application. The library distinguishes itself through its interactive capabilities, enabling the inclusion of custom action buttons and navigation links directly within notification overlays. It maintains a centralized registry for active alerts, providing developers with granular control over the lifecycle of each messa
ChatUI is a React conversational UI library and framework designed for building messaging interfaces. It provides a set of components for creating conversation flows, including message bubbles, input areas, and structured message hierarchies. The library distinguishes itself through specialized AI agent interface features, such as the visualization of an agent's reasoning process and simulated typing animations that render text character-by-character. It also includes a system of pre-designed conversational card templates for rendering banners, selection lists, and questionnaires within a cha
DGElasticPullToRefresh is a Swift pull-to-refresh component for iOS that provides a bouncy, elastic animation effect for scrolling lists. It serves as a specialized table view extension that triggers content updates via a downward swipe gesture. The component uses bezier paths and spring physics to render curved visual elements, simulating a flexible stretching effect during user interaction. This physics-based approach governs the movement and bounce of the interface to create a fluid feel. The system manages gesture-driven states and coordinate transformations to shift the view hierarchy.
Clusterize.js is a vanilla JavaScript virtual list library and DOM virtualization tool. It enables the display of massive data sets by rendering only the subset of rows currently visible within the user viewport. The plugin operates as a lightweight frontend component without external dependencies or framework requirements. It reduces browser memory usage and DOM load by swapping the content of existing elements rather than rendering thousands of nodes simultaneously. The library focuses on frontend performance optimization and large dataset visualization. It maintains a native scrolling exp
Util is a comprehensive development framework for .NET designed to implement layered architectures and domain driven design. It provides a toolkit of base classes and tools for building full stack applications, specifically focusing on the creation of backend admin frameworks and management interfaces. The project distinguishes itself through a boilerplate generator that produces the necessary types and classes to standardize repetitive architectural patterns. It also includes a micro-frontend orchestrator that enables the splitting of large frontend modules into independent projects for sepa
pulltorefresh.js is a JavaScript library and touch-gesture UI component used to add pull-to-refresh functionality to scrollable elements in web applications. It acts as a web interaction plugin that detects downward scrolling gestures to trigger content refresh actions. The library focuses on mobile web application user experiences, allowing developers to implement touch-based navigation and dynamic content refreshing that mimics native app behaviors on smartphones and tablets. The implementation includes configurable trigger distances and sensitivity thresholds. It utilizes touch-event trac
fullPage.js is a JavaScript full-screen scrolling library and layout engine used to create websites composed of vertical sections and horizontal slides that snap to the viewport. It provides a system for organizing web content into full-screen pages with automatic snapping behavior. The library distinguishes itself through a WebGL transition framework and visual storytelling tools, enabling cinematic effects such as 3D rotations, parallax backgrounds, fading, and water distortion during navigation. It also features a responsive adaptation system that can switch from automatic snapping to stan
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
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,
fluttereasyrefresh is a library for implementing pull-to-refresh and infinite scroll pagination within Flutter list components. It provides the functional components and logic required to trigger data reloads via pull-down gestures and fetch additional data chunks through pull-up triggers. The project features a decoupled indicator architecture that allows for customizable visual styles, themed animations, and flexible positioning of headers and footers. It includes a centralized controller that enables the programmatic management of refresh and loading states independently of user gestures
TwinklingRefreshLayout is a pull-to-refresh layout for Android that provides a scrollable container for implementing refresh and load-more functionality. It acts as a view wrapper for components such as RecyclerView, ScrollView, and WebView to ensure consistent refreshing and loading behaviors across different scrollable views. The project distinguishes itself through an overscroll rebound component that creates an elastic bouncing animation when users scroll past layout boundaries. It includes a system for custom refresh indicators, allowing header and footer views to animate their visual st
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
Lenis is a lightweight JavaScript library designed to provide fluid, momentum-based scrolling experiences for web interfaces. It functions as a frontend utility that decouples visual scroll position from the browser's native state, allowing for custom easing and duration while preserving standard browser accessibility, search functionality, and layout measurement tools. The library distinguishes itself by normalizing input from mouse wheels and touch gestures into a unified stream, ensuring consistent physics across different devices. It operates by intercepting native scroll events and apply