Recently, I migrated a production React Native application from the Legacy Architecture to the New Architecture (Fabric + TurboModules + JSI).

What looked like a simple configuration change:

newArchEnabled=true

turned into a journey of debugging navigation issues, Fabric rendering glitches, Reanimated crashes, and third-party library incompatibilities.

Key Lessons