Hermes and React Native:
How do they complement each other?

Hermes was an essential character in Greek mythology. He was a son of Zeus, who was noted for his work as a guide and messenger. Moreover, he was recognized as a symbol of prosperity among merchants.
That’s why Facebook coined the name to launch an engine that can revolutionize how developers build mobile applications. Especially for those who believe that adding more features can generate performance problems.
Hermes didn’t! He could handle several tasks at once and always deliver results. Now, in mobile applications, the most successful ones incorporate a range of functionalities useful to users. Nevertheless, you always need to ensure optimal performance.
As mobile applications grow in complexity, choosing the right architecture becomes critical to maintaining performance across devices. Leveraging a solid cross-platform strategy can make a significant difference, especially when working with frameworks like React Native. If you’re exploring this approach, take a look at our Cross-Platform App Development Services to see how scalable, high-performing apps are built for multiple platforms.
However, larger apps that use JavaScript frameworks tend to have functional issues as features are added. Paradoxically, users not only want you to add these new features, but they also want them to work well, regardless of the device they access!
A clear example of a lousy development was the Twitter Fleets. Many users complained that these “stories” took a long time to load on their devices. Even the swiping mechanism was clunky. There was no good user experience work!
Performance and innovation should go hand in hand. If you create an app with many features, but they can’t be used, your efforts are useless. That’s why your code development team can benefit from Hermes, a new JavaScript engine especially useful in React.
What is Hermes, and what is it for?
Hermes is an open-source JavaScript engine that was introduced in 2019. At a Chain React convention in Portland (Oregon), Marc Horowitz, software engineer, revealed the features of this engine. The idea is that it will serve, precisely, to improve the efficiency of large applications.
Regardless of the device they use to access, the idea is that users can experience good performance. In this way, if this audience has a low-end smartphone, they can still access the new features of mobile applications. Therefore, it ensures accessibility for all users.
This development comes from Facebook and is designed for use with the React Native framework. This means that it is helpful for creating JavaScript applications on mobile operating systems.
Hermes: how does it influence React?
Hermes differs from other JavaScript code engines that translate bytes on the fly. This is mainly because the Greek god’s engine works with code that is already compiled when the package is created. Therefore, Hermes uses compact bytecode. This optimization occurs on the developer’s computer, whether on Linux, macOS, or Windows.
The idea is that Hermes can refine the user experience on performance in React Native. Mainly, this engine works on a few metrics. The two main ones are:
- Time of interaction (TTI). This resource measures the time from when the web starts loading until all secondary resources finish loading. That is until the application can respond entirely and in good condition to the user’s needs.
- Download size. Hermes works on a compact code. This makes it easy to reduce the APK file’s size if it is an Android app. This way, the app can be downloaded on older devices that do not have much storage space.
It’s important to mention that Hermes was created with a mobile focus. This allows React Native apps to be constantly optimized. Therefore, it is intended for mobile applications, but they did not create it for browsers or server infrastructure.
How does Hermes help the developer’s work?
The idea is that developers will also have a much more efficient job when using Hermes with React. The first thing to note is that they will have to make changes to the build.gradle. That is, it’s useful to compile the application, something that can be done with this information:
project.ext.react = [
entryFile: "index.js",
enableHermes: true
]The benefits of working with it are obvious. The first thing that stands out is the speed of iteration, which allows bytecode to be compiled in a deferred manner. The idea is that the developer works more quickly, more comfortably, and in a more structured way. Maybe that’s why the name of this engine was chosen since Hermes was a swift god.
With this AOT (ahead-of-time) compiler, the whole package is compiled to bytecode in advance. This is a substantial difference compared to engines that use JIT (just-in-time) systems. Therefore, Hermes focuses on CPU metrics, enabling more reliable work.
Performance optimization in React Native doesn’t stop at improving load times or reducing bundle size. In many real-world scenarios, apps also need to handle processes outside the UI lifecycle, such as background tasks. If you’re looking to extend your app’s capabilities even further, this guide on running background tasks with Headless JavaScript in React Native explores how to manage these processes efficiently without impacting user experience.
On the other hand, we must also highlight the enormous debugging work present in this engine. Facebook has incorporated support for remote debugging of Chrome through the DevTools protocol. In addition, developers can connect remotely to the Hermes engine running on their device, debugging applications natively.
Thus, the Hermes project has:
- A command-line JavaScript debugger.
- A Hermes bytecode disassembler, known as hbcdump.
- A Hermes compiler that compiles JavaScrpt into Hermes bytecode, known as Hermesc.
- A virtual machine running Hermes bytecode, but without compiler functions, known as hvm.
- A valuable program to enter and execute JS code interactively, named Hermes-repl.
The importance of using Hermes in React Native
Hermes is currently available on Github, and all developers can use it for their projects.
Just as it happened to the god of Olympus, you must be able to adapt to all requests and demands to be recognized. You must always guarantee results because your reputation depends on them.
Now you know what Hermes is for in React Native. If you want to know more about similar topics, we invite you to read content from our blog.
Related articles

apr 8, 2025 | 6 min read
Development of Fascioli’s Web App: Case Study in Real Estate

aug 14, 2023 | 16 min read
Best 3 Frontend Frameworks: React, Angular and Vue.js

may 5, 2025 | 3 min read