Since it is possible that the State of JS team set up a booth at a React Native conference for polling or some other factor impacted the results, we decided to get a second opinion. For this, we turned to Google Trends to see how much “noise” each platform is making on the web.
Clearly one platform is generating far more noise than the other. How can we separate those researching and marketing the platform to those actually using the different technologies? Our friends at npm-stat.com make this determination quite simple by querying NPM on our behalf. The below stat displays the number of downloads of the “nativescript” and “react-native” libraries which clearly indicate both are growing in usage, but developers are increasingly voting in favor React Native.
The cause behind these adoption figures isn’t entirely clear but please allow us a bit of conjecture. First, we believe the success of React Native and the struggles of NativeScript are largely influenced by the success of the React library in general. Since being introduced in 2013, React’s functional component model and unidirectional data flow have proven more powerful and lightweight than their Angular counterparts, driving higher adoption rates for React.
Secondly, it’s also possible that Angular 2’s introduction superseding AngularJS with a laborious migration path left many development teams feeling burned. Telerik, a primary champion of NativeScript, has also been accused of leaving developers hanging out to dry, most notably with halting new development of their eCommerce platform last year and retiring their Telerik Platform suite this year. To this point, we do find it concerning that while the React Native has 1,600 contributors pushing major releases monthly, NativeScript only has 101. While they had regularly been pushing major monthly releases, they seemed to have stopped all together in October 2017 (as of mid-Feb 2018).
So, the conclusion is easy, right? NativeScript is the “Windows Phone” of cross platform tools and is doomed to a long and slow death. Therefore, use React Native, right? The data sure seems to indicate that React Native has the developers, the adoption, and momentum to be the dominant cross-platform mobile development tool for the foreseeable future. But it’s not all doom and gloom for NativeScript. As you saw in the NPM downloads chart above, NativeScript, while not growing as fast as React Native, is still growing in popularity. It’s also the de-facto tool for sharing components between mobile and the Angular 2 development community. Its recent efforts to integrate with Vue (a growing UI framework) may also be a bit of an x-factor which could enhance its future growth.
At Core, we like to be cross-platform agnostic. Our mobile technologists write apps using NativeScript, React Native, and Xamarin – in addition to native platform development as the circumstances dictate to deliver the most value for a client’s project. Platform viability is one of the factors we consider because it can greatly impact support costs for the app beyond the initial development. A wise saying is that “the true cost of software is in the maintenance”, so selecting the right toolset is crucial to the ongoing business success of your app.
Do you need assistance weighing platform viability against its features and benefits? We’d love to talk with you about what’s best for your business.