30 open-source projects similar to iamdustan/smoothscroll, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
This JavaScript smooth scrolling library is a frontend utility and viewport motion controller designed to animate transitions to anchor links. It intercepts standard link clicks to replace instant jumps with fluid movement toward target elements. The library provides configurable motion easing patterns and speed controls to manage acceleration and deceleration. It includes a mechanism to cancel active animations immediately and supports programmatic scroll triggering via direct function calls. The tool handles positioning offsets to prevent target content from being hidden behind fixed heade
Better-scroll is a JavaScript scroll library and touch interaction engine designed to create high-performance scrollable areas in web browsers. It functions as a modular UI component framework that provides the foundation for building complex scrollable elements. The library is distinguished by a plugin-based architecture that allows the injection of custom methods and event hooks. This system enables the creation of specialized interface components such as carousel sliders, scrollable picker inputs, and draggable element systems. The project covers a wide range of mobile web interaction pat
This is a jQuery plugin that acts as a cross-browser event normalizer for mouse wheel movement. It standardizes mouse wheel event handling and scroll delta values across different web browsers to provide a predictable interface for web applications. The utility converts hardware-specific scroll increments into consistent whole-number values. This process resolves inconsistencies in how various browsers report movement, ensuring that scroll distance and input signals are unified into a single format. The project covers cross-browser scroll handling and web input standardization. It allows for
react-scroll is a library for managing smooth and immediate scrolling behavior between page elements in React applications. It functions as a DOM scroll controller, providing a declarative API and a set of components to animate the viewport to specific target elements. The library enables custom scrolling by allowing the viewport to move to target elements through either instant jumps or animated transitions. It provides a system for integrating this scrolling logic into custom components using mixins to define specific movement triggers and targets. The project covers viewport navigation an
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
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
This project is a PHP environment compatibility library and polyfill designed to provide a consistent interface for retrieving all incoming HTTP request headers. It functions as a request header parser that extracts and normalizes raw server variables into a predictable associative array. The library ensures cross-platform behavior by detecting missing native functions at runtime and injecting fallback implementations. This allows for standardized request header retrieval and server variable normalization across diverse server architectures and configurations.
Phoenix is a JavaScript gesture library and mobile-first interaction toolset designed to manage touch events and scroll behaviors in web-based interfaces. Its primary purpose is to provide a pull-to-refresh UI component that triggers data updates when a user pulls down on a mobile or web view. The library focuses on mobile web interaction design, providing themed animations and visual indicators that mimic native mobile app gestures. It enables the implementation of dynamic data refresh workflows through a downward drag interaction. The project covers the interception of scroll events and th
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
Custom scrollbars vanilla javascript library with native scroll, done simple, lightweight, easy to use and cross-browser.
Portfolio-responsive-complete is a responsive web portfolio template built with core web languages that adapts automatically to any screen size. It functions as a frontend developer portfolio template, providing a personal showcase site designed with a mobile-first approach. The project incorporates mobile-first fluid layouts that adapt screen structures dynamically across devices, alongside declarative style encapsulation that organizes visual rules into structured stylesheets. It features event-driven DOM manipulation to update interface states dynamically in response to user interactions.
snacks.nvim is a comprehensive collection of quality-of-life plugins and utilities designed to extend the core functionality of Neovim. It serves as a multi-purpose toolkit providing a UI framework, navigation enhancements, and integrations with external services. The project distinguishes itself by combining a wide array of specialized tools into a single suite, including a picker-based file explorer, a deep GitHub integration for managing issues and pull requests, and a set of development utilities for profiling Lua performance and inspecting code execution. Its broader capability surface
Fixed-nav is a client-side JavaScript library for building responsive, touch-friendly navigation menus on single-page websites. It pins navigation bars to the screen viewport so control interfaces remain persistently accessible as users scroll through long content. The library automatically monitors scroll positions against document boundaries to highlight active section indicators in real time. When navigation links are selected, it animates viewport transitions to target sections using hardware-accelerated timing functions instead of abrupt jumps. Additional capabilities include dimming ba
core-js is a comprehensive compatibility layer and standard library polyfill that implements ECMAScript proposals and stable language features across diverse JavaScript runtimes. It serves as a runtime environment shim to ensure consistent execution of global objects, iteration protocols, and standard library methods in older browsers or non-browser environments. The project is distinguished by its delivery models, offering both prototype-based global polyfilling and a pure-module implementation. This allows for the integration of modern functionality without modifying global prototypes to pr
html5shiv is a JavaScript compatibility polyfill and legacy browser shim that enables the use of HTML5 sectioning elements in outdated versions of Internet Explorer. It provides a compatibility layer that ensures modern HTML5 tags are recognized and rendered correctly by overriding element creation methods. The library ensures that HTML5 sectioning elements contain their child elements in old web engines by applying basic styles. It specifically addresses layout and styling discrepancies for both screen and print media to prevent layout collapse. The project includes a programmable configura
Sugar is a JavaScript utility library designed to extend native objects and prototypes with additional methods for data manipulation and transformation. It functions as a toolkit for object utilities, date manipulation, string inflection, and the polyfilling of missing or broken standard language features. The library provides the ability to map utility methods directly onto built-in prototypes or wrap values in temporary objects to enable method chaining without modifying global prototypes. It also includes a polyfill system to ensure consistent behavior across different execution environmen
This project is a technical guide and implementation library for advanced visual effects and hardware-accelerated animations using the Core Animation framework on iOS. It provides a comprehensive reference for creating high-performance motion graphics, custom graphic rendering, and the construction of 3D engines using perspective transforms and Z-axis manipulation. The collection distinguishes itself through a deep focus on GPU rendering optimization and graphics performance. It covers advanced strategies to maintain high frame rates, such as reducing offscreen rendering via shadow path optim
history.js is a cross-browser URL state manager and HTML5 History API polyfill. It functions as a single page application router that manages browser URL and history state consistently across HTML5 and HTML4 browsers, enabling navigation without triggering full page reloads. The project provides a JavaScript framework adapter that integrates history management with the event systems of jQuery, MooTools, and Prototype. It ensures compatibility through a fallback mechanism that switches to hash-based navigation and hashbang URLs when the native HTML5 History API is unavailable. The system cove
Glide is an image loading and caching library for Android that fetches and decodes images, GIFs, and video stills from local or remote sources. It functions as a media rendering framework and memory management tool designed to resize and downsample assets to fit specific view dimensions. The system prioritizes scrolling performance through a multi-level caching strategy that stores decoded media in memory and raw data on disk. It employs resource pooling to reuse bitmap memory and binds image loading tasks to component lifecycles to automatically release resources and prevent memory leaks. T
Embla Carousel is a framework-agnostic JavaScript library used to build sliding content galleries and touch-enabled slider components. It provides a toolkit for creating carousels that function independently of any specific frontend framework or DOM library. The library focuses on precision swiping and fluid motion for interactive image galleries and custom content sliders. It is designed to maintain consistent behavior across different browser environments and device screen sizes.
mui is a mobile UI component framework and native-like web UI kit designed for building high-performance mobile web interfaces. It functions as a mobile web performance framework and gesture-based interface library to eliminate browser lag and mimic the behaviors and animations of native mobile applications. The framework focuses on implementing common mobile UX patterns, including pull-to-refresh functionality, swipe-to-action menus, and sliding side navigation. It provides specialized tools for gesture-driven interface development to ensure an immediate visual response to touch interactions
es5-shim is an ECMAScript 5 polyfill library and standard library shim. It serves as a JavaScript compatibility layer that adds missing ES5 standard library methods and language features to legacy JavaScript engines. The project functions by implementing the ECMAScript 5 specification for non-compliant engines to ensure consistent behavior and prevent runtime errors. It provides a bridge for older browser environments, allowing modern JavaScript code to execute in legacy environments. The library covers cross-browser API standardization and polyfill management. It specifically handles the em
cnc-ddraw is a DirectDraw wrapper and emulation layer designed to ensure legacy 2D graphics software runs on modern operating systems. It functions as a compatibility layer that intercepts legacy API calls and redirects them to a modern rendering backend to prevent crashes and black screens. The project provides a 2D graphics upscaler that uses shaders to increase the resolution of low-fidelity visuals for high-definition screens. It also includes a frame rate controller to synchronize frame timing and limit output speed, which prevents stuttering and performance drops. The tool manages disp
Closure Library is a JavaScript standard library and utility toolset designed for building large-scale web applications. It provides a collection of core utility modules and standardized APIs to simplify complex application logic and state management. The project is built as a modular framework using a namespace-based module system to prevent global scope pollution. It is specifically designed for use with the Closure Compiler to enable aggressive dead-code elimination and minification, reducing the final delivery size in production. To ensure reliability in large projects, the library utiliz
Headjs is an asynchronous asset loader designed to load JavaScript and CSS files in parallel and execute them in a specific sequence to improve page speed. It functions as a resource dependency manager that tracks script loading status and executes callbacks only after all required dependencies are fully loaded. The project includes a browser feature detection library that checks for HTML5 and CSS3 capabilities. This allows for conditional resource loading, where assets are delivered based on detected browser features, device capabilities, or screen resolution. The system further manages fro
This project is a comprehensive technical interview preparation guide and computer science knowledge base. It serves as a structured study resource designed to help software engineers review core engineering concepts and prepare for professional coding assessments. The repository focuses on a wide array of theoretical and practical domains, including detailed references for mobile application architecture and operating system fundamentals. It provides curated materials on software architecture patterns and network protocol analysis to support professional development. The content covers foun
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
prefixfree is a runtime CSS processor and polyfill library designed to ensure cross-browser visual consistency. It functions as a client-side script that automatically detects browser requirements and injects necessary vendor prefixes into CSS properties and values at runtime. The project utilizes a system that intercepts stylesheets and modifies style rules in browser memory. It includes a DOM mutation style monitor that observes the document tree for new elements to apply prefixing logic to dynamic content and attributes. The library provides polyfilling for modern CSS standards in legacy
MAME is a vintage hardware emulation platform designed to recreate the circuitry of arcade games, computers, and consoles to run original software on modern devices. It functions as a retro gaming preservation framework for managing, verifying, and archiving ROM sets and disk images to ensure long-term software accessibility. The project features a system debugging tool for inspecting emulated memory, CPU registers, and execution flow via breakpoints and disassembly. It also includes a Lua-based automation layer that exposes core system state and hardware controls for custom behavior and anal
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