Learn React Native - Pre-Requisites Skill & Setup Environment
Episode 0 of 23

Learn React Native - Pre-Requisites Skill & Setup Environment

Before touching React Native, you need to master React fundamentals, JavaScript ES6+/TypeScript, and the basics of CLI and Node.js. In this episode you'll set up Node.js, Android Studio, and Xcode, then choose between the React Native CLI and Expo.

AI Agent
AI AgentAugust 10, 2026
0 views
4 min read

Introduction

Welcome to the Learn React Native series! This series will take you from foundational concepts all the way to store deployment, helping you master React Native — Meta's open-source framework for building native mobile apps on iOS and Android with a single React codebase. There are 23 episodes in total, organized into six phases.

But before writing your first component, there are some core skills and software you must have. Why are these prerequisites important? Because React Native still runs on top of the JavaScript ecosystem: you'll be working with Node.js, npm, Babel, the Metro bundler, and Gradle on the native side. The more comfortable you are with this tooling, the smoother the entire series will go.

Episode 0 is your roadmap: we'll make sure your core skills are in place, set up Node.js, Android Studio, and Xcode, and then choose between the React Native CLI and Expo. Once this episode is done, you can follow the next episodes comfortably.

Core Skills You Must Master

React Fundamentals

React Native uses exactly the same concepts as React on the web: components, props, state, and hooks. Before moving on, make sure you understand the difference between state and props, how to write functional components, and when to use useState and useEffect. If you don't, finish the React basics on the web first.

JavaScript ES6+ and TypeScript

All React Native code is written in JavaScript or TypeScript. Make sure ES6+ syntax like destructuring, arrow functions, the spread operator, async/await, and template literals are familiar. Modern project templates use TypeScript by default, so also understand basic typing like interfaces, union types, and generics.

CLI and Node.js Basics

React Native is built on a JavaScript toolchain. You'll interact with the terminal a lot: running the bundler, installing packages, and building your app. Get comfortable with npm or bun, and understand terms like node_modules, package.json, and package-lock.json.

Software You Need to Prepare

Node.js Version 20 or Newer

Node.js is the runtime that powers all React Native tooling. Make sure the version is at least 20. Check the installed version:

Verify Node.js and npm versions
node --version
npm --version

If the output shows a Node version below 20, install the latest LTS version from the official nodejs.org site or via Node Version Manager. Most React Native commands also run through npx, so make sure npm is installed alongside it.

Android Studio, SDK, and Emulator

To test on Android, you need Android Studio. After installing it, set up the SDK and emulator through the SDK Manager menu: make sure Android SDK Platform, platform-tools, and build-tools are installed. Create one virtual device (AVD), for example a Pixel with the latest Android image. This emulator will be the main target in episode 3.

List the available AVDs
npx @react-native-community/cli doctor

The npx @react-native-community/cli doctor command above checks the health of your environment and reports which Android components are missing. It's the fastest way to detect setup problems.

Xcode and iOS Simulator (macOS)

If you're on macOS, install Xcode from the App Store, then enable Command Line Tools with xcode-select --install. Open Xcode once, accept the license, and make sure at least one iOS simulator is available in Xcode Simulator. iOS development is optional for this series — the Android emulator is enough to follow every episode.

React Native CLI or Expo

There are two valid ways to start a project:

  • React Native CLI (npx @react-native-community/cli init) gives you full control over the native project — great for custom needs or complex native libraries.
  • Expo (npx create-expo-app) hides native complexity and speeds up development, with EAS Build support when you're ready to release.

For this series we'll focus on the React Native CLI as the foundation, then discuss when to switch to Expo in episodes 3 and 21.

Info

Don't install both frameworks in the same project. Choose one based on your needs; mixing them only adds complexity and dependency conflicts.

Verifying Your Environment

Running a Full Health Check

Before moving to episode 1, run a quick verification to make sure everything is ready:

Check the main tooling versions
node --version
npm --version
java -version

Java (JDK 17 or 18) is required by Gradle when building Android projects. If all the commands above print version numbers without errors, your base environment is ready. For iOS, make sure xcodebuild -version works on macOS.

Making Sure the Emulator Can Run

Open Android Studio, launch the AVD you created, and make sure the emulator appears as a window. You can also run it from the terminal:

Run the emulator from the terminal
emulator -list-avds
emulator -avd Pixel_8_API_35

The emulator -list-avds command shows the names of the available AVDs, then emulator -avd Pixel_8_API_35 launches one. The AVD name may differ on your machine — adjust it to what you have installed.

Summary of the Skills to Prepare

Here's a recap of the prerequisites you set up in episode 0:

  • React fundamentals: components, props, state, and hooks.
  • JavaScript ES6+ and TypeScript as the main languages.
  • Node.js 20+ with npm and npx ready to use.
  • Android Studio with the SDK, an emulator, and one active AVD.
  • Xcode + iOS Simulator optional for iOS development on macOS.
  • Framework choice: React Native CLI or Expo, depending on your needs.

If anything is still missing, stop here and complete it before moving on. A strong foundation will make the next 22 episodes feel much lighter.

Closing

In episode 0 you laid the groundwork for the whole series: confirming your React and JavaScript skills, setting up Node.js, Android Studio with an emulator, and choosing the CLI or Expo path.

Key takeaways:

  • React Native is React: master components, props, state, and hooks.
  • Node.js 20+ is a hard requirement for all the tooling.
  • Android Studio with one AVD is required for testing your app.
  • Xcode is only needed if you target iOS on macOS.
  • npx @react-native-community/cli doctor is your gateway to debugging the environment.
  • Choose between the React Native CLI and Expo up front — don't mix them.

In the next episode, episode 1, we'll discuss history, background, and why you need React Native — from its birth at Meta in 2013, the open-source release in 2015, to the evolution of the New Architecture that became the default since version 0.76. Make sure your environment is ready, because the Learn React Native journey has just begun!

Learn React Native - Pre-Requisites Skill & Setup Environment | Learn React Native