One Engine to Animate Them All: React Native Animated in C++
summary
Meta replaces four separate native animated implementations with a single shared C++ engine built as a TurboModule using JSI and ships it as a cross‑platform runtime. The rewrite eliminates recurring bugs—opacity flicker, mid‑gesture view overrides that make buttons unclickable, and carousel glitches—improves startup on some Facebook flows, adds integration tests, and lands in Canary (0.87) with rollouts to Android, iOS, macOS, and Windows while keeping backward compatibility and the existing JS Animated API.
AI-written summary · about
chapters (14)
- 0:00React Native animation challenges
- 1:54Animation in React Native threads
- 3:39Native-driven animation with Fabric
- 5:03Handling gestures with native driver
- 6:47Instagram VR animation struggles
- 8:16Cross-platform rewrite of animated module
- 10:02Backward compatibility in new runtime
- 11:05Production testing and performance
- 12:32Debugging flickering and sync
- 15:40Fixing unresponsive buttons
- 17:06Solving carousel flickering
- 18:52Final improvements and adoption
- 19:35Future of layout animation
- 20:38Release timeline and feedback
related talks
46mAnimations in React Native
25mJust use platform
29mAdvanced React Native
30mMicrointeractions & Animations in React Native: Help users understand the UI
28mDemystifying complex animations creation process in React Native
44mHow Animations Work Under the Hood in React Native
28mThe Power of Interpolation
10mReact Native, your UX superhero
