HomeGuidesReferenceLearn
ArchiveExpo SnackDiscord and ForumsNewsletter

Installation

Learn how to get started creating a new universal app with Expo.


To develop applications with Expo, make sure to check out the following requirements and recommended tools.

Requirements

To use Expo, you need to have the following tools installed on your machine:

  • Node.js LTS release - Only Node.js LTS releases (even-numbered) are recommended.

    As Node.js officially states, "Production applications should only use Active LTS or Maintenance LTS releases". You can install Node.js using a version management tool (such as nvm or volta or any other of your choice) to switch between different Node.js versions.

  • Git for source control.
  • Watchman (for Linux or macOS users).

Get started

After installing Node.js, you can use npx to create a new app.

Terminal
npx create-expo-app --template
Create a new project

Learn how to create a new Expo project and run it on your device.

Expo CLI

Expo CLI is part of the expo package, and you can use it by leveraging npx — a Node.js package runner. To start your app, open the terminal on your development machine and run the npx expo command:

Terminal
# Start the development server
npx expo

# See a list of commands in Expo CLI
npx expo --help
You don't need macOS to build an iOS app. You only need an iOS device to run a development build. Learn what are development builds and how you can leverage them to build your projects.

Recommended tools

  • Yarn for faster and more reliable dependency management. Use this instead of npm and npx.
  • VS Code editor and the Expo Tools VS Code extension for easier debugging and app config autocomplete.

If you are using Yarn, you can bootstrap a new app using the following command:

Terminal
yarn create expo

Windows terminal support

The Expo CLI is compatible with the following terminals on Windows 10 and higher:

  • PowerShell (the default terminal)
  • WSL 2 (Windows Subsystem for Linux) using a Bash shell

WSL 2 typically requires additional configuration to set up your development environment for testing code on a device using a development build or Expo Go. Learn more about configuring WSL 2 for Expo development.