Publish your web app
Edit page
Learn how to deploy your web app using EAS Hosting.
EAS Hosting is in preview and subject to changes.
If you are building a universal app, you can quickly deploy your web app using EAS Hosting. It is a service for deploying web apps built with Expo Router and React.
Prerequisites
Before you begin, in your project's app.json file, ensure that the expo.web.output property is either static or server.
Export your web project
To deploy your web app, you need to create a static build of your web project. Export your web project into a dist directory by running the following command:
- npx expo export --platform webRemember to re-run this command every time before deploying when you make changes to your web app.
Initial deployment
To publish your web app, run the following EAS CLI command:
- eas deployAfter running this command for the first time, you'll be prompted to select a preview subdomain for your project. This subdomain is a prefix used to create a preview URL and is used for production deployments. For example, in https://test-app--1234.expo.app, test-app is the preview subdomain.
Once your deployment is complete, the EAS CLI will output a preview URL to access your deployed app.
Production deployment
To create a production deployment, run the following EAS CLI command:
- eas deploy --prodOnce your deployment is complete, the EAS CLI will output a production URL to access your deployed app.
Deploy automatically
You can automatically deploy your app to the web with EAS Workflows. First, you'll need to configure your project, add a file named .eas/workflows/deploy-web.yml at the root of your project, then add the following workflow configuration:
name: Deploy web on: push: branches: ['main'] jobs: deploy_web: name: Deploy web type: deploy params: prod: true
The workflow above will create a web deployment on every commit to your project's main branch. You can also run this workflow manually with the following EAS CLI command:
- eas workflow:run deploy-web.ymlLearn more about common patterns with the workflows examples guide.
Learn more
You can learn more about setting up deployment aliases, using a custom domain, or deploying an API Route.