React Native Getting Started: Build Your First App

Set up React Native, run on iOS and Android, and understand the bridge and native modules.

React Native lets you build mobile apps with React. Here’s how to start and what to expect.

React Native and cross-platform mobile
React Native and cross-platform mobile

Setup

  • Environment — Node, Watchman (macOS), Xcode (iOS), Android Studio and SDK (Android). Use the official React Native environment guide.
  • Create appnpx @react-native-community/cli init MyApp or use Expo (see below). Run npx react-native run-ios or run-android.
  • Structure — JavaScript/TypeScript entry point; components use React Native primitives (View, Text, Image, ScrollView). Native code in ios/ and android/ when you need it.

Core concepts

  • Components — Use RN components, not HTML. View ≈ div, Text ≈ span (must wrap text). Style with StyleSheet or inline; layout is flexbox by default.
  • Bridge / New Architecture — JS talks to native via a bridge (or JSI in the new architecture). Native modules expose device APIs; use community or official libraries when possible.
  • Platform — Use Platform.OS or Platform.select() for platform-specific code. Use .ios.js / .android.js for different file per platform when needed.

Cross-platform framework preference (survey):

Cross-platform mobile framework

Expo vs bare

Expo — Managed workflow; many APIs without native code. EAS Build for cloud builds. Great for prototypes and many apps. Bare — Full access to native; use when you need custom native modules or tight control.

React Native in 100 seconds:

Takeaway

React Native is a strong choice if you know React. Start with the default template or Expo; add native modules only when necessary. Share logic and UI across iOS and Android.