A few days ago, Marc Horowitz, a Facebook software engineer has unveiled a new open-source JavaScript engine – Hermes at the Chain React 2019 conference in Portland. It aims to boost the launch time of Android apps built on the company’s own React Native framework. Read: Facebook Open Sources Pythia: A Deep Learning Framework
Hermes: An Open Source JavaScript Engine
Hermes is a new tool for developers that allows them to improve the start-up performance of their app in the same way Facebook does for its apps. The JavaScript engine also enables them to enhance the performance of low-end smartphones. Horowitz also demonstrated that a React Native app with Hermes can fully load in half the time the same app without Hermes. There were two seconds of time difference. Facebook uses Hermes to keep apps users hooked, including the time to interaction (TTI), the size of the APK file and memory usages. Marc claimed that the new JavaScript engine cuts the APK size to half the stock React Native app sized around 41MB. It also reduces a quarter of the app’s memory usage. With Hermes, Facebook is mainly aiming at the low-end smartphones, as compared to the fancy flagships that highly-paid developers use themselves. Overall, Hermes helps developers to solve some important performance issues. Users can interact with an app faster with limited restrictions such as slow downloading and performance issues caused by multitasking, especially in low-end smartphones. “As developers, we tend to carry the latest flagship devices. Most users around the world don’t,” Horowitz said. “Commonly used Android devices have less memory and less storage than the newest phones and much less than a desktop. This is especially true outside of the United States. Mobile flash is also relatively slow, leading to high I/O latency,” he also added. Also Read: 5 Reasons to Learn React Native For App Development As we know, there are lots of such engines already available for browsers. For example – Google’s V8, Mozilla’s SpiderMonkey, Microsoft’s Chakra, etc. Hermes is not aimed at browsers or, for example, how Node.js on the server-side. “We’re not trying to compete in the browser space or the server space. It has never been our goal,” Horwitz noted. Hermes JavaScript engine is open-source and available on GitHub under an MIT license. You can test it and see how it can help you in building better-performing apps.