← ClaudeAtlas

expo-eas-workflowlisted

Operational workflow for shipping an Expo/React Native app with EAS — build profiles in eas.json, eas submit to the App/Play Store, OTA updates via channels and rollout percentages, update-compatibility rules (runtime version, native-code drift), and CI wiring with EAS Workflows YAML. EAS is a paid Expo Application Services product with free-tier limits — build/compute minutes and update bandwidth cost money past the free tier. Use when a task ships a build, submits to a store, publishes an OTA update, sets up a build profile, or wires EAS into CI. Triggers on "eas build", "eas submit", "eas update", "eas.json", "OTA update", "runtime version", "build profile", "EAS Workflows", "app store submission".
BenMacDeezy/Orns-Forge · ★ 0 · AI & Automation · score 72
Install: claude install-skill BenMacDeezy/Orns-Forge
<!-- last-verified: 2026-07 --> # Expo EAS operational workflow > **EAS costs money past the free tier.** `eas build` and EAS Workflow jobs > consume your plan's build/compute minutes; store submission needs paid > Apple Developer and Google Play accounts; update bandwidth beyond the free > allotment bills too. Check https://expo.dev/pricing before running cloud > commands, and never assume a build/submit/update run is free just because > local development is. ## 1. Build profiles (`eas.json`) `eas.json` defines named **build profiles** under `build`, each mapping to a distribution shape: ```json { "cli": { "version": ">= 16.0.1", "appVersionSource": "remote" }, "build": { "development": { "developmentClient": true, "distribution": "internal" }, "preview": { "distribution": "internal" }, "production": { "autoIncrement": true, "ios": { "resourceClass": "m-medium" } } }, "submit": { "production": { "ios": { "appleId": "you@example.com", "ascAppId": "1234567890" }, "android": { "serviceAccountKeyPath": "./service-account.json", "track": "internal" } } } } ``` - **`development`**: dev-client build for local Metro-connected iteration — never submit this profile to a store. - **`preview`**: internal-distribution build for QA/stakeholders (TestFlight internal group, Play internal track, or ad-hoc/APK) — not public. - **`production`**: the store-ready profile; `autoIncrement: true` lets EAS bump build numbers automatically in