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.


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.

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:

# 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

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

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 may require additional configuration to set up your development environment and testing code on a development build.