mcpField
E
expo-deployment

expo-deployment

github.com/midudevCloud & DevOps7.0k58 installsUpdated 1w ago
Repository

About expo-deployment

expo-deployment is an EAS deployment guide for Expo app developers. It covers building for iOS, Android, and web, store submissions, hosting, automated releases, and version management.

Key features

  1. 01Build iOS and Android apps
  2. 02Submit apps to app stores
  3. 03Deploy web apps with EAS Hosting
  4. 04Automate releases with EAS Workflows
  5. 05Manage versions and check build status

Use cases

  1. 01Prepare an iOS app store build
  2. 02Submit an Android release to Google Play
  3. 03Create web preview deployments for PRs
  4. 04Set up push-triggered continuous releases

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/midudev/autoskills --skill expo-deployment

After installing, type/expo-deploymentin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
app-store-metadata.md
ios-app-store.md
play-store.md
testflight.md
workflows.md

Details

From the project README

Deployment

This skill covers deploying Expo applications across all platforms using EAS (Expo Application Services).

References

Consult these resources as needed:

  • ./references/workflows.md -- CI/CD workflows for automated deployments and PR previews
  • ./references/testflight.md -- Submitting iOS builds to TestFlight for beta testing
  • ./references/app-store-metadata.md -- Managing App Store metadata and ASO optimization
  • ./references/play-store.md -- Submitting Android builds to Google Play Store
  • ./references/ios-app-store.md -- iOS App Store submission and review process

Quick Start

Install EAS CLI
npm install -g eas-cli
eas login
Initialize EAS
npx eas-cli@latest init

This creates eas.json with build profiles.

Build Commands

Production Builds
# 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
Submit to Stores
# 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 testflight

Web Deployment

Deploy 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 deploy

EAS Configuration

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"
      }
    }
  }
}

Platform-Specific Guides

iOS
  • Use npx testflight for quick TestFlight submissions
  • Configure Apple credentials via eas credentials
  • See ./reference/testflight.md for credential setup
  • See ./reference/ios-app-store.md for App Store submission
Android
  • Set up Google Play Console service account
  • Configure tracks: internal → closed → open → production
  • See ./reference/play-store.md for detailed setup
Web
  • EAS Hosting provides preview URLs for PRs
  • Production deploys to your custom domain
  • See ./reference/workflows.md for CI/CD automation

Automated Deployments

Use EAS Workflows for CI/CD:

# .eas/workflows/release.yml
name: Release

on:
  push:
    branches: [main]

jobs:
  build-ios:
    type: build
    params:
      platform: ios
      profile: production

  submit-ios:
    type: submit
    needs: [build-ios]
    params:
      platform: ios
      profile: production

See ./reference/workflows.md for more workflow examples.

Version Management

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

Monitoring

# List recent builds
eas build:list

# Check build status
eas build:view

# View submission status
eas submit:list

Comments

Markdown supported