A zero-config, fast and small (~3kB) virtual list (and grid) component for React, Vue, Solid and Svelte.
The virtualnpm library is a zero-config, fast, and small virtual list (and grid) component designed for React, Vue, Solid, and Svelte frameworks. It aims to provide the best performance without requiring extensive configuration while handling common challenges associated with virtualization like dynamic size measurement, scroll position adjustments, imperatives scrolling, and iOS support. With bundle sizes around 3kB gzipped per component and support for various use cases, including fixed size, dynamic size, reverse scrolling, RTL, infinite scrolling, and more, virtualnpm targets modern web development needs.
To install virtualnpm, ensure you have the required versions of the frameworks:
react >= 16.14
// If using ESM and webpack 5, use react >= 18 to avoid issues.
vue >= 3.2
solid-js >= 1.0
svelte >= 4.0
For legacy browser support without ResizeObserver, consider using a polyfill. Detailed documentation, API references, and examples can be found on the virtualnpm GitHub page.
The virtualnpm library offers a lightweight, high-performance solution for virtual lists and grids across multiple frameworks. With its focus on ease of use, speed, small bundle sizes, and flexibility in handling various virtualization scenarios, virtualnpm is a valuable tool for modern web development projects.