Investigating React Native
Article Summary
Twitch spent a week investigating React Native for their mobile apps. Here's what their Android team discovered about the framework's real-world viability.
Alec Lee from Twitch's mobile team built a functional Twitch client in React Native, integrated custom native components, and tested integration with their existing production app. This is a candid technical evaluation from a team prioritizing performance for live video and real-time chat.
Key Takeaways
- Live reload made iteration insanely fast compared to 10+ second native recompiles
- React Native only ships 32-bit binaries, forcing removal of all 64-bit libraries
- Lower-end pre-5.0 Android devices failed to launch with cryptic BatchedBridge errors
- Integration into existing apps proved far harder than starting from scratch
- Single JavaScript thread creates performance concerns for video playback and fast chat
Critical Insight
Twitch decided against integrating React Native because it excels at greenfield apps but adds too much complexity and risk when retrofitting existing native codebases.