shopify/flash-list

A better list for React Native

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 48 minutes ago
Added to GitGenius on September 9th, 2026
Created on December 20th, 2021
Open Issues & Pull Requests: 199 (+0)
GitHub issues: Enabled
Number of forks: 390
Total Stargazers: 7,200 (+0)
Total Subscribers: 216 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 5.3 days
Mean response time: 100.8 days
90th percentile: 315.6 days
Tracked items: 404

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 100% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "agent-fix" is answered fastest, typically in about an hour, while "P2" waits about 7 days. 64% of tracked open issues have had no activity in three months, so the open count overstates what is actively being worked. Only 4% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 71
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 268 days
Stale 30+ days: 62
Stale 90+ days: 49

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (378)
  • v2.0 (56)
  • P1 (47)
  • P2 (27)
  • agent-triage (16)
  • agent-fix (11)
  • enhancement (9)
  • P0 (7)

Detailed Description

Flash List is a high-performance list component for React Native that replaces FlatList with minimal code changes.

Flash List solves the problem of poor scrolling performance and blank cells in React Native lists by implementing view recycling, which reuses rendered components as users scroll rather than destroying and recreating them. The tool automatically handles dynamic item sizing without requiring developers to provide size estimates, and it supports multiple item types within a single list through a type-based recycling pool system. Version 2 is built as a JavaScript-only solution designed specifically for React Native's new architecture.

Developers should choose Flash List if they are building React Native applications that need smooth scrolling performance with complex or dynamically-sized list items. It works as a drop-in replacement for FlatList, requiring only a component name change in most cases. The tool is particularly suited for lists with thousands of items, varying item heights, or multiple component types. Flash List also supports masonry layouts for Pinterest-style designs and automatically maintains the visible content position when items are added to the list.

The project maintains active development with regular updates and documentation. The team provides comprehensive guides for migrating from FlatList and documents known issues transparently. The codebase is written in TypeScript with full type definitions, and the project includes a Discord community channel for user support and discussion.