Deploying Expo apps to iOS App Store, Android Play Store, web hosting, and API routes
SaferSkills independently audited expo-deployment (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
This skill covers deploying Expo applications across all platforms using EAS (Expo Application Services).
Consult these resources as needed:
npm install -g eas-cli
eas loginnpx eas-cli@latest initThis creates eas.json with build profiles.
# iOS App Store build
npx eas-cli@latest build -p ios --profile production
# Android Play Store build
npx eas-cli@latest build -p android --profile production
# Both platforms
npx eas-cli@latest build --profile production# iOS: Build and submit to App Store Connect
npx eas-cli@latest build -p ios --profile production --submit
# Android: Build and submit to Play Store
npx eas-cli@latest build -p android --profile production --submit
# Shortcut for iOS TestFlight
npx testflightDeploy web apps using EAS Hosting:
# Deploy to production
npx expo export -p web
npx eas-cli@latest deploy --prod
# Deploy PR preview
npx eas-cli@latest deployExpo Router API routes deploy together with the web bundle on EAS Hosting — eas deploy ships both. To author or configure the API routes themselves, use the expo-api-routes skill.
Standard eas.json for production deployments:
{
"cli": {
"version": ">= 16.0.1",
"appVersionSource": "remote"
},
"build": {
"production": {
"autoIncrement": true,
"ios": {
"resourceClass": "m-medium"
}
},
"development": {
"developmentClient": true,
"distribution": "internal"
}
},
"submit": {
"production": {
"ios": {
"appleId": "[email protected]",
"ascAppId": "1234567890"
},
"android": {
"serviceAccountKeyPath": "./google-service-account.json",
"track": "internal"
}
}
}
}npx testflight for quick TestFlight submissionseas credentialsEAS Workflows automate the build → submit → update → deploy pipeline for CI/CD. See ./references/workflows.md for deployment-oriented examples. To author or validate workflow YAML, use the expo-cicd-workflows skill — it works from the live workflow schema.
EAS manages version numbers automatically with appVersionSource: "remote":
# Check current versions
eas build:version:get
# Manually set version
eas build:version:set -p ios --build-number 42# List recent builds
eas build:list
# Check build status
eas build:view
# View submission status
eas submit:list~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.