Get started

Learn how to get started with EAS Update and use it in your project.

Setting up EAS Update allows you to push critical bug fixes and improvements that your users need right away.


Install the latest EAS CLI

EAS CLI is the command line app you will use to interact with EAS services from your terminal. To install it, run the command:

npm install --global eas-cli

You can also use the above command to check if a new version of EAS CLI 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@latest; remember to use that instead of eas whenever it's called for in the documentation.


Log in to your Expo account

If you are already signed in to an Expo account using Expo CLI, you can skip the steps described in this section. If you are not, run the following command to log in:

eas login

You can check whether you are logged in by running eas whoami.


Create a project

Create a project by running:

npx create-expo-app


Configure your project

To configure your project, run the following commands in the order they are specified:

# Install the latest `expo-updates` library
npx expo install expo-updates

# Initialize your project with EAS Update
eas update:configure

# Set up the configuration file for builds
eas build:configure

After running these commands, eas.json file will be created in the root directory of your project.

Inside the preview and production build profiles in eas.json, add a channel property for each:

  "build": {
    "preview": {
      "channel": "preview"
      // ...
    "production": {
      "channel": "production"
      // ...

The channel allows you to point updates at builds of that profile. For example, if we set up a GitHub Action to publish changes on merge, it will make it so that we can merge code into the "production" Git branch. Then, each commit will trigger a GitHub Action that will publish an update which will be available to builds with the channel "production".

Optional: If your project is a bare React Native project, see Updating bare app for any additional configuration.


Create a build for the project

You need to create a build for Android or iOS. We recommend creating a build with the preview build profile first. See Create your first build on how to get started and set up Internal distribution for your device or simulator.

Once you have a build running on your device or a simulator, you are ready to send an update.


Make changes locally

After creating the build, you are ready to iterate on the project. Start a local development server with the following command:

npx expo start

Then, make any desired changes to your project's JavaScript, styling, or image assets.


Publish an update

To publish an update to the build, run the following command:

eas update --branch [branch] --message [message]

# Example
eas update --branch preview --message "Updating the app"

Once the update is built and uploaded to EAS and the command completes, force close and reopen your app up to two times to download and view the update. By default, expo-updates checks for updates every time the app is loaded. However, you can also implement a custom strategy with the Updates API and app config. If your app is not updating as expected, validate your configuration.

Next steps

You can publish updates continuously with GitHub Actions. See Using GitHub Actions with EAS Update for more information.

  • Ask a question on the forums

  • Edit this page

Was this doc helpful?