PostHole
Compose Login
You are browsing eu.zone1 in read-only mode. Log in to participate.
rss-bridge 2026-02-25T17:00:00+00:00

Warper: Rust Powered React Virtualisation Library

Warper 7.2 is a cutting-edge open-source React virtualization library utilizing Rust and WebAssembly for unmatched performance. With zero-allocation hot paths and O(1) circular buffer operations, Warper achieves 120 FPS even with 100,000 items. Its compact 8.7KB size and universal bundler compatibility set it apart. Explore a new era of efficient UI rendering! By Daniel Curtis


InfoQ Homepage

News

Warper: Rust Powered React Virtualisation Library

Web Development

Warper: Rust Powered React Virtualisation Library

Feb 25, 2026

min read

Daniel Curtis

Write for InfoQ

Feed your curiosity.
Help 550k+ global
senior developers
each month stay ahead.Get in touch

Listen to this article - 0:00

0:00

0:00

  • Reading list

Warper, an open-source React virtualization library powered by Rust and WebAssembly, has released version 7, delivering performance optimizations, improved bundler compatibility, and enhanced developer tooling.

Warper 7.2 introduces several changes, including zero-allocation hot paths using TypedArrays, O(1) circular buffer operations for frame timing, universal bundler support, and responsive demo examples across device viewports.

The library takes a distinctive approach to virtualization by offloading scroll calculations to a Rust-compiled WebAssembly module. Performance-critical operations, including binary search, range calculations, and offset lookups, run in compiled WASM rather than JavaScript. The library maintains a Fenwick tree (binary indexed tree) of item heights, enabling O(log n) prefix sum queries and O(1) lookups for fixed-height items.

A key change in v7 is the replacement of regular arrays with TypedArrays (Int32Array, Float64Array) in hot paths, eliminating garbage collection pressure during scrolling. The release also replaces push()/shift() operations with constant-time circular buffer operations for frame timing, addressing a source of unnecessary allocations in earlier versions.

Getting started with Warper requires a single package install:


npm install @itsmeadarsh/warper

Basic usage involves the useVirtualizer hook, which returns the visible range and offsets for rendering:


import { useVirtualizer } from "@itsmeadarsh/warper";

The library claims significant performance advantages over established alternatives. According to benchmarks shared by the developer on Reddit, testing with 100,000 items showed react-window achieving approximately 40 FPS compared to Warper's 120 FPS. At one million items, the gap widened further, with react-window dropping to approximately 12 FPS while Warper maintained 118 FPS.

The React virtualization space includes several established libraries. react-window, which recently shipped its own v2.0 release with automatic sizing and native TypeScript support, remains the lightest option at approximately 6KB gzipped. TanStack Virtual offers a headless, framework-agnostic approach at around 12KB. react-virtualized, while feature-rich at 25KB, is generally considered a heavier option. Warper sits at approximately 8.7KB gzipped and is the only option in this group to use a WebAssembly engine.

Community reception has been mixed. On Reddit, one user highlighted enthusiasm for the approach but questioned the practical need:

Those numbers you advertise are awesome. BUT, tbh who even needs to render 10M items?"

Another responded:

10M is a stress test to show how well it performs in an unlikely large scenario. But there are uses for tables 1k+ in size especially in the financial industry.

Several users reported compatibility issues in Firefox, with one noting:

Your examples in Chrome won't scroll past line 588673, so claims of 1M+ rows are unverified in any browser that I tried.

The author responded:

I guess it is the default maximum scroll limit of Chrome.

The bundle size has also seen notable improvement. Earlier development versions shipped at over 50KB, which the developer has since reduced to approximately 5.9KB minified and gzipped with what they described as zero performance loss. Universal bundler support now covers Vite, Webpack, Rollup, esbuild, Parcel, and Next.js out of the box.

Documentation is available on the project's GitHub repository. Warper is open source under the MIT license.

About the Author

****Daniel Curtis****

Show moreShow less

This content is in the Web Development topic

Related Topics:

Development

Web Development

Rust

React

Virtualization

TypeScript

Related Editorial

Popular across InfoQ

Anthropic Study: AI Coding Assistance Reduces Developer Skill Mastery by 17%

Google Brings its Developer Documentation into the Age of AI Agents

Uforwarder: Uber’s Scalable Kafka Consumer Proxy for Efficient Event-Driven Microservices

Vercel Releases React Best Practices Skill with 40+ Performance Rules for AI Agents

Kubernetes Introduces Node Readiness Controller to Improve Pod Scheduling Reliability

Software Evolution with Microservices and LLMs: A Conversation with Chris Richardson

A round-up of last week’s content on InfoQ sent out every Tuesday. Join a community of over 250,000 senior developers.

View an example

We protect your privacy.


Original source

Reply