react-native logo

React Native

Mobile Framework

React Native is a framework for building native mobile applications for iOS and Android using React and JavaScript (or TypeScript). Unlike hybrid approaches that render web content in a WebView, React Native compiles to actual native UI components, a React Native button becomes a real UIKit button on iOS and a native Android button on Android. This gives apps built with React Native the look, feel, and performance of truly native applications. For custom web application development, React Native is my recommendation when a client already has a React web app and wants a mobile companion. The component model, hooks, state management, and even much of the business logic can be shared between web and mobile codebases. The ecosystem includes libraries for navigation, animations, gestures, and platform-specific features like haptic feedback and biometric authentication.

1 How It Started

React Native originated from a 2013 Facebook hackathon project. Jordan Walke, who had created React for the web, prototyped a way to generate native iOS UI elements from JavaScript. The idea gained internal traction at Facebook, and a small team, including Christopher Chedeau (vjeux) and Tom Occhino, developed it into a production framework. React Native was publicly announced at React.js Conf in January 2015 and open-sourced in March that year. Initially iOS-only, Android support followed in September 2015. Facebook used it internally for the Ads Manager app and parts of the main Facebook app, which validated its production readiness.

2 Unknown Fact

React Native's new architecture, released as stable in 2024, completely replaced the original communication bridge between JavaScript and native code. The old architecture used an asynchronous JSON bridge, which caused performance bottlenecks for frequent updates. The new architecture introduces JSI (JavaScript Interface), which allows JavaScript to directly invoke native functions synchronously, without serialization overhead. This was one of the largest rewrites in React Native's history, taking over four years of development. The codename for the new renderer was "Fabric," and the native module system was called "TurboModules."

Visit: reactnative.dev

Need React Native in a custom build?

or hi@mikelatimer.ai