---
title: Instant updates
description: Learn how to set up EAS Update to push critical bug fixes and improvements.
---
import { Terminal } from '~/ui/components/Snippet';
import { BoxLink } from '~/ui/components/BoxLink';
import { LayersTwo02Icon } from '@expo/styleguide-icons';
**EAS Update** allows making small bug fixes and pushing quick improvements in a snap. It is a hosted service that uses the [`expo-updates`](/versions/latest/sdk/updates/) library to serve updates. It allows an end user's app to swap out the non-native parts of their app (for example, JS, styling, and image changes) with a new update that contains bug fixes and other updates. In this guide, you will learn how to set up EAS Update for your app.
## Install `expo-updates`
Start by installing the `expo-updates` library in your project. Run the following command:
## Configure the project with `eas update`
You need to configure your project to use EAS Update. Run the following commands in the order they are specified:
After running these commands, the **eas.json** file be modified in the root directory of your project. Inside it, you'll find that a `channel` property is added to the `development`, `preview` and `production` build profiles.
{/* prettier-ignore */}
```json eas.json
{
"build": {
"development": {
"channel": "development"
/* @hide ... */ /* @end */
},
"preview": {
"channel": "preview"
/* @hide ... */ /* @end */
},
"production": {
"channel": "production"
/* @hide ... */ /* @end */
}
}
}
```
The `channel` allows you to point updates at builds of that profile. For example, if you set up a GitHub Action to publish changes on merge, it will 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 build with the channel `"production"`.
## Create a build for the project
You need to [create a build](/develop/development-builds/create-a-build/#create-a-development-build-for-emulatorsimulator) for Android or iOS. We recommend creating a build with the `preview` build profile first. This will allow you to test your update before publishing it to the `production` channel.
Once you have a build running on your device or a simulator, you are ready to iterate on the project. 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:
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.
## Next step