Cordova versus React Native : two frameworks full of possibilities

Cantor is involved for several years in the field of developing mobile apps.
Through one of our client’s project, we have been facing the choice of the framework that we would use to build an app. Therefore, we have compared two well-knowed tools : Cordova and React Native.

The Frameworks

Those two tools are hybrid mobile applications frameworks. They allow us to build, on a single tool, a solution that can be declined on apps which will work on all platforms, such as Android and iOS.
The goal here is obviously to optimise the workload and to build a multi-platform app without paying the costs that are usually inferred.

Our analysis

If Cordova is well-knowed since 2011 in the field of hybrid frameworks, React Native is “the new guy in town”, having been launched in 2015 by Facebook. It is surrounded by this glow of curiosity about new tools.
However, is React Native worth putting Cordova aside ?
It depends on your objectives and your timing.

React Native offers more fonctionalities and modules for the mobile app development than Cordova, while being more difficult to set. It is more complex at the structural level, and needs some changes and extra-care when it comes to the publishing of the app, whether it’s on iOS or Android. The engineers take more time to learn how to use React than Cordova.
Despite all of these facts, the benefits of the younger framework are to take into account. Indeed, React Native uses the most of the terminal of the mobile, being by that faster and more powerful than Cordova. Unlike Cordova which is using webviews as a way to develop apps, React Native is more “native-like”, as it is using all of the components of the device and make them work for it.
The potential of the tool makes it hard to look at the other way !
Therefore, we have decided at Cantor, to take the longer way : our engineers are learning to use React Native to build our mobile applications.


More about React Native and Cordova, elsewhere on the Web : et