Creating your first build
In this guide, you'll learn how to build a ready-to-submit binary for the Apple App Store and Google Play Store using EAS Build.
Alternatively, if you prefer to install the app directly to your Android device / emulator or install it in the iOS simulator, we'll point you towards resources that explain how to do that.
For a small app, you should expect to have kicked off your builds for Android and iOS within a few minutes. If you encounter any issues along the way, you can reach out on the Expo forums
EAS Build is a new and rapidly evolving service; before you set out to create a build for your project we recommend consulting the limitations
page and the other prerequisites below.
Don't have a project yet? No problem: it's quick and easy to create a "Hello world" app that you can use with this guide.
- Install Expo CLI by running
npm install -g expo-cli.
expo init PROJECT_NAME. Choose the project template that best suits you.
- EAS Build also works well with projects created by
ignite-cli, and other project bootstrapping tools.
EAS Build is available to everybody with an Expo account; you can sign up at https://expo.dev/signup
. You can use EAS Build for free, and paid subscriptions provide service quality improvements such as additional build concurrencies, priority access to minimize time your builds spend queueing, and increased limits on build timeouts. Read more
EAS CLI is the program that you will use to interact with EAS services from your terminal. Install EAS CLI by running
npm install -g eas-cli. It will notify you when a new version is available (we encourage you to always stay up to date with the latest version).
We recommend using
npm instead of
yarn for global package installations. You may alternatively use
npx eas-cli, just remember to use that instead of
eas whenever it's called for in the documentation.
If you are already signed in through Expo CLI, you don't need to do anything. Otherwise, log in with
eas login. You can check whether you're logged in by running
to configure your iOS and Android projects to run on EAS Build. If you'd like to learn more about what happens behind the scenes, you can read the build configuration process reference
Additional configuration may be required for some scenarios:
- If you are going to use EAS Build to create release builds for the Apple App Store, this requires access to an account with a $99 USD Apple Developer Program membership.
- You can build and sign your app using EAS Build, but you can't upload it to the Google Play Store unless you have a membership, a one-time $25 USD fee.
eas build --platform android to build for Android.
eas build --platform ios to build for iOS.
Alternatively, you can run
eas build --platform all to build for Android and iOS at the same time.
Before the build can start, we'll need to generate or provide app signing credentials. If you have no experience with this, don't worry — no knowledge is required, you will be guided through the process and EAS CLI will do the heavy lifting.
- If you have not yet generated a keystore for your app, you can let EAS CLI take care of that for you by selecting
Generate new keystore, and then you're done. The keystore will be stored securely on EAS servers.
- If you have previously built your app with
expo build:android, then the same credentials will be used here.
- If you would rather manually generate your keystore, please see the manual Android credentials guide for more information.
- If you have not generated a provisioning profile and/or distribution certificate yet, you can let EAS CLI take care of that for you by signing into your Apple Developer Program account and following the prompts.
- If you have already built your app with
expo build:ios, then the same credentials will be used here.
- If you would rather manually generate your credentials, refer to the manual iOS credentials guide for more information.
By default, the
command will wait for your build to complete; but, you can interrupt it if you prefer not to wait. Monitor the progress and read the logs by following the link to the build details page. You can also find this page by visting your build dashboard
or running the
command. If your build is on behalf of an organization that you are a member of, you will find the build details on the build dashboard for that account
If you have made it to this step, congratulations! Depending on which path you chose, you now either have a build that is ready to upload to an app store, or you have a build that you can install directly on an Android device / iOS simulator.
You will only be able to install the app directly to your Android device / iOS simulator if you explicitly built it for purpose; if you built for app store distribution, you will need to upload to an app store and then install it from there (for example, from Apple's TestFlight app).
To learn how to install the app directly to your Android device / iOS simulator, navigate to your build details page from your build dashboard
and click the "Install" button.
In this guide we walked through the steps for creating your first build with EAS Build, without going into too much depth on any particular part of the process.