Skip to main content
React Native combines the best parts of native development with React, a best-in-class JavaScript library for building user interfaces. This guide introduces the core concepts you need to understand to build React Native apps.

What is React Native?

React Native lets you build mobile applications using JavaScript and React. Unlike other cross-platform frameworks, React Native apps are built with real native components, not web views. This means your app looks, feels, and performs like a native application.

Core Building Blocks

React Native apps are built from several fundamental concepts:

Components

Reusable UI building blocks like View, Text, and Image

React Fundamentals

Props, state, hooks, and component lifecycle

User Input

Handling text input and form data

Lists

Efficiently rendering scrollable lists of data

Platform-Specific Code

Writing code that adapts to iOS and Android

Networking

Fetching data from APIs and web services

Navigation

Moving between screens in your app

Native Components

React Native uses native platform components under the hood. When you write:
<View>
  <Text>Hello World</Text>
</View>
React Native translates this to:
  • UIView and UILabel on iOS
  • android.view.View and TextView on Android
This is why React Native apps feel native - they use the actual native UI components of each platform.

JavaScript and Native Bridge

React Native runs your JavaScript code in a JavaScript engine (JavaScriptCore on iOS, Hermes on Android by default). Communication between JavaScript and native code happens asynchronously over a “bridge”.

Development Workflow

1

Write JavaScript/React code

Use familiar React patterns with JSX syntax
2

Fast Refresh updates your app

See changes instantly without rebuilding
3

Native modules provide platform APIs

Access camera, geolocation, and other native features
4

Build and deploy

Create production builds for App Store and Play Store

Key Differences from React Web

While React Native shares many concepts with React for web, there are important differences:
AspectReact WebReact Native
Components<div>, <span><View>, <Text>
StylingCSS filesJavaScript StyleSheet
EventsonClickonPress
ScrollingNative overflow<ScrollView>
NavigationReact RouterReact Navigation

Next Steps

Start with React Fundamentals if you’re new to React, or dive into Components and APIs to learn about React Native’s building blocks.

New to React?

If you’re new to React, start with the React Fundamentals guide to learn about props, state, and hooks.

Build docs developers (and LLMs) love