deploying-expo-native-application
Installation
SKILL.md
Deploying an Expo native application
Setup
| Item | Kind | Required | When | Done when | How |
|---|---|---|---|---|---|
| Node.js 22+ with the project's package manager | user | required | All | node --version prints v22 or later and the lockfile's package manager (npm, pnpm, yarn) runs |
https://nodejs.org |
| EAS CLI | user | required | All | eas --version prints 24.0.0 or later |
npm install -g eas-cli@latest |
| Expo account | user | required | All | eas whoami shows an account with access to the project's organization |
Sign up at https://expo.dev/signup, then eas login |
| GitHub CLI | user | required | Deploy, Provision, Release | gh auth status succeeds and gh repo view finds the repository |
https://cli.github.com, then gh auth login; create the GitHub repository and push the project |
| Apple Developer Program | user | optional | Provision, Release, when ios.bundleIdentifier is set |
The user confirms an active membership | https://developer.apple.com/programs/enroll/ |
| Google Play Console | user | optional | Provision, Release, when android.package is set |
The user confirms a developer account | https://play.google.com/console/signup |
| CI token | user | required | Provision | gh secret list shows EXPO_TOKEN |
Per configuring-github-actions.md → CI token |
| Production branch | ask | required | Deploy | .github/workflows/deploy-<app>.yml names it under on.push.branches |
The branch git remote show origin marks as HEAD; recorded in the workflow |