7 Reasons Why Infinite Red Uses React Native to Build World-Class Apps

So you’re thinking about switching to React Native? Here are 7 reasons we love it.

AJ Robertson
Red Shift

--

Let’s take a look at some of the reasons why we, at Infinite Red, choose to use React Native.

But first, some context. Infinite Red is a mobile app and web app agency. We’ve done native mobile development for years as well as web development. We do work for startups and companies all over the world, so when React Native popped up in 2015, we were very interested.

1. JavaScript makes the magic happen.

Wait, what!? JavaScript? That’s right, modern-day JavaScript is amazing! Of course, the programming language is known throughout history for allowing you to dig your own grave, but in the last several years, we’ve seen it come a long way. With hard work being put into the ECMAScript specification and yearly releases since 2015, the everyday life of a JavaScript developer has not seen brighter days!

In the end, however, React Native is native. All the JavaScript UI elements you write are turned into native UI elements. That means, when you tap on a React Native button, you’re actually tapping on a native iOS or Android button. A React Native app runs the program’s logic on the JavaScript engine, but all of the UI rendering is done by the native operating system, in its native rendering engine. Gone are the days of apps feeling like a website in a wrapper. React Native builds to real native code.

This was important to us because we had used webview-based solutions like Cordova and PhoneGap in the past, and their user experiences were not up to par.

2. The huge ecosystem helps you be productive from day one.

Working in React Native goes beyond building user interface components. The ecosystem surrounding React Native is thriving due to the inclusion of Node Package Manager (NPM) as the package manager of choice. Any libraries on npmjs.org that aren’t web or platform specific (i.e. not jQuery) can be used in your React Native project.

Some of the most popular JavaScript libraries, such as Redux, for state management, and Lodash, for working with data, have over 1 million and 15 million downloads a week respectively. These libraries and many other wildly popular JavaScript libraries can be used in your React Native application. Bring in your favorites and you’ll be productive from day one.

3. If you know JavaScript, you can quickly learn React Native.

There are a lot of JavaScript developers. Folks on your team probably already know JavaScript. If your company is like ours, you probably have a web team that’s working with React.

At Infinite Red, we’ve had great success bring our front-end web team into React Native. I can speak from experience in saying all of my React experience from web transferred directly over to React Native. When joining my teammates on a React Native project, I was able to start building screens and components on day one! I had no new language or framework to learn before becoming productive. Once I had the project up and running, I was committing code.

Once you get your team set up with React Native, you’ll be amazed by how quickly they’ll have an app in the App Store. We were very excited to hear that several uShip employees were able to build a React Native app and publish it to the Google Play Store and the App Store just a few weeks after attending Infinite Red Academy’s on-site React Native Fundamentals training (visit Infinite Red Academy to learn more).

4. You can build for iOS and Android at the same time.

Prior to React Native, companies had to build a separate app for iOS and Android. This took twice as long or twice as many people and often resulted in inconsistent experiences across platforms.

With React Native, you get to build both iOS and Android apps at the same time. At Infinite Red, we’ve built many apps now in React Native. You’ll be shocked by how little code you’ll have to write for just one specific platform. Once you learn the little gotchas between iOS and Android (i.e. drop shadow) you’ll be thrilled with your newfound productivity.

In addition, iOS and Android have been stealing ideas from each other for many years now. Smartphone app experiences are becoming more similar between iOS and Android making React Native even easier to work with. The need for having separate apps for iOS and Android is becoming less and less. With React Native, your developers can build both iOS and Android at the same time and share the same codebase!

5. From startups to the Fortune 500, thousands of companies use React Native.

Large and small companies alike are shipping apps with React Native! NFL just completed a full overhaul of their mobile apps for iOS and Android in React Native. Other companies major companies using React Native for their apps include Tesla, Walmart, Microsoft and many more. Learn more about who’s using React Native by visiting React Native’s Showcase.

6. The freedom of Open Source. The strength of enterprise.

No license fee. No hidden code you can’t debug. React Native is open source (MIT) and maintained by Facebook. Not only are the companies listed above using React Native; Facebook also has a core team working on React Native and paving the way with it. With React Native, we have the freedom of open source, but the strength of enterprise companies.

7. Support is just a Slack chat away.

Infinite Red is among the many companies working full-time in React Native. If you are a developer, join our Community Slack. The community is a place where many of our employees and other professionals help each other with React Native and related technologies.

If you are trying to decide if React Native is right for your project, let’s talk! Drop us an email here and tell us more about your project. You’re never stuck with React Native.

What‘d We Miss?

What else is missing from this list? What are the reasons you and your company build apps with React Native? Let us know in a tweet: @codeithuman. We’ll link our favorite tweets in the comments below.

AJ Robertson is a React Native instructor and computer programmer at Infinite Red. Utilizing his degree and experience, AJ creates better products informed by how people actually use and build apps. Please clap, follow, and tweet @codeithuman to learn more.

--

--

React Native instructor & computer programmer at @infinite_red.