React Native Blog Jul 17, 2019

Hermes JavaScript Engine for React Native

Article Summary

Facebook just open-sourced Hermes, a JavaScript engine built specifically for React Native on Android. This isn't just another optimization tweak. It's a ground-up rethink of how JS should run on mobile.

At Chain React, Facebook announced Hermes, a lightweight JavaScript engine designed for the constraints of mobile devices. After analyzing performance data, they realized the JS engine itself was the bottleneck for startup performance and app size, especially on mass-market Android devices with limited resources.

Key Takeaways

Critical Insight

Hermes tackles React Native's biggest mobile performance bottlenecks by replacing the JavaScript engine with one purpose-built for resource-constrained devices.

The performance data that led Facebook to build an entirely new JS engine reveals surprising insights about mobile constraints versus desktop assumptions.

About This Article

Problem

Facebook found that the JavaScript engine was slowing down React Native apps. On mass-market Android devices with limited memory and slow storage, this became a real problem for startup performance and download size.

Solution

Facebook created Hermes, a lightweight JavaScript engine built specifically for mobile. Rather than adapt existing engines designed for desktops, they optimized it from scratch for the constraints of mobile devices.

Impact

Hermes makes React Native apps faster on resource-limited devices by using less memory, reducing download size, and cutting time to interactive. Apps become usable much quicker.