Skip to content

SYSTEM Cited by 1 source

FlashList (Shopify)

FlashList is Shopify's open-source high-performance list component for React Native (github.com/shopify/flash-list). It is the canonical Shopify-owned third-party library consumed deeply within the Shopify mobile app itself, and is the reference example of a library that chose to support both React Native architectures from the same package version.

v2 — rebuilt on the New Architecture

Per Shopify's 2025 migration write-up (see sources/2025-09-12-shopify-migrating-to-react-natives-new-architecture): FlashList v2 was rebuilt from scratch on React Native's new architecture, leveraging measure-before-paint — Fabric's synchronous layout — to eliminate visual jumps and speed up screen loads for complex lists. FlashList v2's alpha intentionally ships dual-architecture support in the same package, so downstream consumers don't have to manage conditional version pinning.

Shopify's stated rationale for dual-arch support in FlashList v2: "Provide a version that supports both architectures. Managing conditional versioning isn't trivial — dual support significantly eases migration burden."

Why the v2 rewrite matters

Large React Native apps depend on list performance as the single biggest scroll-smoothness lever. FlashList's v1 was written against the old architecture's async rendering; v2's rewrite is an example of a third-party library doing a substantial engineering investment to track React Native's architecture shift and provide a clean migration path for consumers.

Per Shopify: the FlashList v2 post (linked from the migration writeup) "provides practical code examples on how to optimize rendering performance on the New Architecture."

Seen in

Stub

This page only covers what's said about FlashList in the Shopify-migration source. Deeper internals (v1 vs v2 data structures, viewport calculation, recycling strategy, benchmark numbers) would be covered by a dedicated FlashList post if ingested.

Last updated · 470 distilled / 1,213 read