When we work with entrepreneurs and businesses eager to turn an idea into a mobile app, React Native is the first framework we consider. We’ve found apps developed using RN have proven to be as capable as native apps and there are quite a few benefits of developing with this framework.
We see three key benefits for your overall business when choosing to use RN for your app:
- It enables faster iteration.
- It’s cost effective to ship v1 to a broader audience.
- It’s reliable as a technology and mature enough to support hiring efforts.
Let’s take those one at a time.
Enables faster iteration
RN allows the same code to function on iOS and Android devices, reducing the time to create apps that work on both platforms.
It also includes an instantaneous reload feature that allows developers to see changes as they are made, which speeds up iterating and debugging.
React Native is also ideal for adding post-launch upgrades. The RN infrastructure supports an “over the air” system (Microsoft CodePush and Expo OTA) that updates the app automatically, meaning you won’t have to ask users to go update the applications in the app store in order to see the new functionality.
Cost effective
With React Native you’ll be able to get more features done within the same time period. Essentially, you get two apps for less money than it would take to develop each app independently.
There’s also a massive third-party library ecosystem we can use to add functionality without building it from scratch. It’s a breeze to connect RN apps to third-party plug-ins that access location services, device storage, and more. Meaning you’ll again be able to get more done feature-wise with your investment.
Reliable & Mature for your product & team
RN has been around for years, so most of the problems we might encounter have already been solved. There are a great deal of resources to support and troubleshoot the technology online.
Because RN uses JavaScript, you may be able to tap into a larger pool of both RN and JS developers who can work with it. This is an important consideration when you look at hiring an in-house team.
So, What Doesn’t Work in React Native?
If you’re creating a better way for users to buy products, connect with others, consume media, or boost productivity, RN is almost always the right way to go.
It is likely better to build your app natively if your app:
- integrates with a native platform technology, such as the Apple Watch
- requires complex UI, animations, etc
- includes platform-specific features (Haptic Touch on iOS)
- integrates with utility apps (Native Browsers, Camera apps, Media players, etc.)
- requires a lot of computation behind the scenes (an app that combines multiple files to produce a certain type of media, or an app that removes certain files based on underlying logic)
RN is also sub-optimal for mobile games that require pinpoint gestures and robust graphics.
Why We Recommend React Native
At thoughtbot, we grade ourselves by how well we serve our clients in building the right products, backed by sound technology choices, and RN helps us do that. It’s the rare chance for you to pay less for a faster service without sacrificing quality.
RN is a great fit for a wide range of companies. Many of today’s biggest apps, like Walmart, SoundCloud, UberEATS, and Skype run on RN. But it’s equally suited for startups looking to quickly ship their MVP.
If you’re interested in learning more about how thoughtbot uses RN and how our native developers respond, check out our upcoming event.
Check Out Our Upcoming RN vs. Native App Panel
Hope you can join us on November 19th. Register here.