⚡️ FlashList

Fast & Performant
React Native List

No more blank cells

Swap from FlatList in seconds. Get instant performance.

<FlashList
  renderItem={({ item }) => {
    return <TweetCell item={item} />;
  }}
  estimatedItemSize={50}
  data={tweets}
/>;
 

Similar props.
Instant performance.

Even with the similar props as the React Native FlatList, FlashList recycles components under the hood to maximize performance.

Exceptional performance on low-end devices

FPS* in UI Thread

up to 5x

FlashList

React Native FlatList

FPS* in JS Thread

up to 10x

FlashList

React Native FlatList

* Average FPS on a 60FPS screen Android Moto G10 device. (Higher is better)

Memory efficient scrolling

Some libraries allocate more items in memory to achieve good performance. FlashList does not recreate items as a user scrolls, making it noticeably more memory efficient.

Developer using React Native FlashList in their laptop.

Developer friendly

FlashList is especially easy-to-use thanks to FlatList's API. Simply change the name of your component and you are good to go.

Snappy on all platforms

On iOS, other lists perform well, but on Android, they fall short. FlashList performs well even on low-end Android devices.

Girl enjoying a list created using FlashList on a phone
<FlashList
  renderItem={({ item }) => {
    return <TweetCell item={item} />;
  }}
  getItemType={({ item }) => {
    return item.type;
  }}
  data={tweets}
/>;

Extra configuration for even better performance.

Apart from FlatList props, FlashList offers a set of extra props to tweak the performance even more.

Install now

Try it in your project now:

yarn add @shopify/flash-list
cd ios && pod install