There are two tools that you need to develop apps with Expo: a command line app called Expo CLI to initialize and serve your project and a mobile client app called Expo Go to open it on iOS and Android. Any web browser will work for opening the project on the web.
You don't need macOS to build an iOS app with Expo, you only need an iOS device to run the Expo Go app. For your development machine, Windows, Linux, and macOS are all supported.
Expo CLI is a command line app that is the main interface between a developer and Expo tools. Expo CLI also has a web-based GUI that pops up in your web browser when you start your project — you can use the GUI instead of the command line interface if you're not yet comfortable using a terminal or prefer GUIs, both have similar capabilities.
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."
# Install the command line tools
npm install --global expo-cli
Verify that the installation was successful by running
expo whoami. You're not logged in yet, so you will see "Not logged in". You can create an account by running
expo register if you like, or if you have one already run
expo login, but you also don't need an account to get started.
Try searching the forums
— which are a great resource for troubleshooting.
The fastest way to get up and running is to use the Expo Go app on your iOS or Android device. Expo Go allows you to open up apps that are being served through Expo CLI.
When the Expo Go app is finished installing, open it up. If you created an account with
expo-cli then you can sign in here on the "Profile" tab. This will make it easier for you to open projects in the client when you have them open in development — they will appear automatically in the "Projects" tab of the client app.