According to Facebook, Hermes helps improve three core app attributes: time-to-interact (TTI), which is the time it takes from launching an app to when it becomes fully loaded and usable; download size (Android .APK size); and memory utilization.
Here you can see some of the improvements it made with Mattermost (an open source Slack alternative) running on a Google Pixel phone, with the TTI down more than 2 seconds, the file-size down 19 MB, and the memory utilization down by 49 MB.
It’s worth noting that Hermes only works with apps that have been built using React Native, a mobile app framework developed by Facebook and open-sourced back in 2015. React Native’s core selling point is that code can run natively on different platforms (i.e. Android and iOS), and the framework has been used by some big brand apps, including Uber Eats and Walmart.
However, React Native hasn’t always been warmly received, due to some of its downsides — specific functionality in apps still require native code, for example, to support integration with the smartphone camera and sensors. And developers often have to create “bridges” to plug the gaps between native code and React Native. That is one of the reasons Airbnb, once an advocate for React Native, segued away from the framework last year.
But open-sourcing Hermes could be one way for Facebook to breathe new life into React Native and encourage further uptake among developers.
Hermes is the latest in a line of open source projects emanating from Facebook, with other recent projects including a deep learning framework called Pythia; a deep learning recommendation model called DLRM; and Spectrum, which is designed to make uploading photos more efficient.