React Native is a cross-platform framework for building mobile applications that can run outside of the browser — most commonly iOS and Android applications.
It can be used to build applications on Windows devices, desktop OS’s, and Apple TVs additionally, but this guide will only be covering its most common purpose — Android and iOS applications.
Table of Contents
What is React Native?
React Native falls in-between native and hybrid applications on the mobile app spectrum. The user interface you create is entirely native and the overall performance of the application is nearly as good as writing a native app using languages such as Swift or Java. It also gives you the flexibility to embed web views (webpages) or native code (Java/Kotlin for Android, Objective C/Swift for iOS) inside your applications wherever you want.
Reasons to choose React Native
- Code reusability — It uses one codebase that is shared between both platforms.
axios, Redux, and other libraries that don’t require the DOM from the web.
- Optimized for developer productivity — Comes with features like hot/live module reloading and chrome developer tools for debugging out of the box!
- Performance — Performs better than hybrid application frameworks like Ionic and Cordova since it's not using web views.
- Corporate backing — Lots of companies support and contribute to React Native including Walmart, Airbnb, Wix, and, of course, Facebook.
- Community — React Native has a large (and growing) community with over 1500 contributors to the core project and thousands more who contribute to various libraries.
- Cross-Platform - Great way to prototype and save time while building either a universal user interface or platform specific mobile application that can run on both iOS and Android devices.
How to Get Started with React Native
There are three quick easy ways to get started with React Native. Depending on your situation, one can be a better option for you.
- Expo - Similar to Create React App to get up and running an app using the terminal. Using Expo you do need XCode or Android Studio to build a React Native application.
- Ignite CLI - Empowers developers to easily create a new React Native app with plug ins. Ignite CLI also enables developers to easily setup best practices.