React Native is a JavaScript library used to build native mobile apps using React. The focus of React Native is on developer efficiency across all the platforms you care about - learn once, write anywhere.
React Native is an open-source framework created by Facebook that lets you build mobile apps using only javascript and some basic html and css. It uses the same design as React, letting you compose a rich mobile UI from declarative components.
React Native apps are not "mobile web apps" or "hybrid apps". They are real cross-platform mobile apps that are indistinguishable from apps built using objective-c or java. typescript is often used to bring clarity in development.
The idea behind React Native can best be captured by the slogan "Learn once, write anywhere", enabling developers to use the same development approach for both desktop/browser and mobile apps.
Technically React Native runs the JavaScript code for a React app in a background thread. Updates to the virtual DOM are collected, and all changes are sent through an API into the native portion of the app. By doing this, React Native avoids slowing down the FPS rate of the app by not making the app wait for unfinished JavaScript operations.
Resources
- Official site
- Getting started
- Video tutorials from EggHead.io
- Catalog of React Native components
- Expo's Snack
- Tutorials and Guide on reactnativeexpress.com
- Awesome React Native
- Native Directory
- Upgrade helper by react-native-community
- React Native Directory