Brian Vaughn 7c51f897ce Experiment with rollup-plugin-postprocess to reduce bundle size
This shaved 104 B off of a create-react-app that imported the FixedSizeList component.
2019-03-04 14:15:18 -08:00
2018-05-05 08:43:41 -07:00
2018-05-05 09:01:51 -07:00
2018-05-05 09:17:21 -07:00
2018-08-29 17:54:05 +03:00
2019-03-04 11:24:56 -08:00
2018-10-01 10:36:38 -07:00
2019-02-21 10:17:12 -08:00
2018-11-05 09:34:23 -08:00

react-window

React components for efficiently rendering large lists and tabular data

NPM registry Travis NPM license

Install

# Yarn
yarn add react-window

# NPM
npm install --save react-window

Usage

Learn more at react-window.now.sh.

Frequently asked questions

How is react-window different from react-virtualized?

I wrote react-virtualized several years ago. At the time, I was new to both React and the concept of windowing. Because of this, I made a few API decisions that I later came to regret. One of these was adding too many non-essential features and components. Once you add something to an open source project, removing it is pretty painful for users.

react-window is a complete rewrite of react-virtualized. I didn't try to solve as many problems or support as many use cases. Instead I focused on making the package smaller1 and faster. I also put a lot of thought into making the API (and documentation) as beginner-friendly as possible (with the caveat that windowing is still kind of an advanced use case).

If react-window provides the functionality your project needs, I would strongly recommend using it instead of react-virtualized. However if you need features that only react-virtualized provides, you have two options:

  1. Use react-virtualized. (It's still widely used by a lot of successful projects!)
  2. Create a component that decorates one of the react-window primitives and adds the functionality you need. You may even want to release this component to NPM (as its own, standalone package)! 🙂

1 - Adding a react-virtualized list to a CRA project increases the (gzipped) build size by ~33.5 KB. Adding a react-window list to a CRA project increases the (gzipped) build size by <2 KB.

License

MIT © bvaughn

S
Description
React components for efficiently rendering large lists and tabular data
Readme 2.5 MiB
Languages
JavaScript 97.5%
CSS 2.4%
HTML 0.1%