Hermes Engine Becomes React Native Default
Article Summary
React Native just made a massive default change that could speed up your app launches and shrink your bundle size. Here's what the benchmarks show.
Meta announced that Hermes is now the default JavaScript engine for React Native 0.70+. Unlike traditional JS engines, Hermes compiles JavaScript to bytecode ahead of time, optimizing for faster startup, smaller app size, and lower memory usage on resource-constrained devices.
Key Takeaways
- Hermes now builds alongside React Native, eliminating version compatibility issues
- Mattermost app showed measurable TTI improvements on both Android and iOS
- iOS Intl API implementation avoids 6MB bloat by using native iOS APIs
- BigInt and WeakRef support coming to close JavaScript feature gaps
React Native 0.70 ships with Hermes as default, bringing ahead-of-time bytecode compilation to improve startup performance and reduce app size without forcing migration.
About This Article
React Native relied on prebuilt Hermes binaries, which caused API and ABI incompatibilities between versions. Developers kept running into compatibility issues.
Meta changed how they build Hermes starting in React Native 0.69. Now Hermes compiles with every React Native release, so the versions stay in sync and mismatches don't happen.
Teams can iterate faster on features and bug fixes. They can deploy major Hermes changes without worrying about breaking compatibility across different platforms.