Building & Deploying
Learn how to create builds for internal testing and production using EAS and GitHub Actions.
VibeFast is configured for seamless builds and deployments using Expo Application Services (EAS). The configuration for this is located in the eas.json file at the root of the project.
Build Profiles
The eas.json file defines several build profiles for different environments:
local: Creates a development client build for connecting to your local machine during development.staging: Creates a build (.apkfor Android,.ipafor iOS) for internal testing. This build points to your staging environment variables.production: Creates a build ready for submission to the app stores. This build points to your production environment variables.
How-To: Create a Build for Internal Testing
When you want to share a version of the app with your team for testing, you should create a staging build.
1. Log in to your Expo account
If you haven't already, log in to your Expo account using the EAS CLI.
eas login2. Run the Staging Build Command
Use the following command to start a new build for Android or iOS. The --profile staging flag tells EAS to use the "staging" configuration from your eas.json file.
For Android:
eas build --platform android --profile stagingFor iOS:
eas build --platform ios --profile stagingEAS Build on Release
The .github/workflows/eas-build-qa.yml workflow is configured to automatically trigger a new staging build on EAS every time you publish a new release on GitHub. This is a great way to automate your internal testing pipeline.
Submitting to the App Stores
To submit your app to the Apple App Store or Google Play Store, you will create a production build.
- Create the build:
eas build --platform all --profile production - Submit the build:
Once the build is complete, you can use the EAS Submit command to upload it to the respective stores.
eas submit --platform ios eas submit --platform android
This streamlined process makes it easy to manage builds for different environments and automate your deployment pipeline.
Found an issue or bug in the docs?
Help me improve! If you spot any errors, typos, or have suggestions, please let me know.
Reach out on X/Twitter @zafarbuildzz