Skip to content
Back to skills

Eas Build Profiles

ASecurity

Configure EAS build profiles (development, preview, production) with environment variables and resource classes. Use when the user says 'EAS build profiles', 'build configurations', 'env vars EAS'.

  • 3 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 4, 2026
developmentbashnodeapi

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned October 4, 2026

npx -y skills add khadinakbarlabs/expo-mobile-app-builder --skill eas-build-profiles --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Eas Build Profiles?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Eas Build Profiles
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/khadinakbarlabs-eas-build-profiles/badge)](https://www.skillsdirectory.com/skills/khadinakbarlabs-eas-build-profiles)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: "eas-build-profiles"
description: "Configure EAS build profiles (development, preview, production) with environment variables and resource classes. Use when the user says 'EAS build profiles', 'build configurations', 'env vars EAS'."
---

# EAS Build Profiles

Three default profiles + how to extend them.

## Credential and external action gate

Editing a local profile is safe. Creating EAS environment variables, reading or storing credentials, starting a cloud build, or changing a project setting is external and may incur cost. Obtain owner confirmation of the exact EAS account, project, environment, variable classification, and action first. Never place a server secret in an `EXPO_PUBLIC_*` variable or commit it to `eas.json`.

## Default 3 profiles
- **development** — `developmentClient: true`, `distribution: internal`. Dev tools enabled. Install dev client on physical iPhone.
- **preview** — `distribution: internal`. Production-style binary for internal QA. Skips TestFlight processing wait.
- **production** — store-bound. No dev client, release config, signed with distribution cert.

## Extending base profiles
```json
{
  "build": {
    "base": {
      "node": "20.19.0",
      "ios": { "resourceClass": "m-medium" },
      "env": { "EXPO_PUBLIC_API_URL": "https://api.example.com" }
    },
    "development": {
      "extends": "base",
      "developmentClient": true,
      "distribution": "internal",
      "channel": "development",
      "ios": { "simulator": true },
      "env": {
        "EXPO_PUBLIC_API_URL": "http://localhost:3000",
        "APP_VARIANT": "development"
      }
    }
  }
}
```

## Resource classes (iOS)
- `m-medium` — default, ~8 min average build
- `m-large` — paid tier, faster, for large apps
- Use `m-large` only if `m-medium` is bottlenecking your dev cycle

## Environment variables — single source of truth
Use **EAS Environment Variables** (web dashboard or `eas env:create`), not `eas.json`. Scoped to development/preview/production. Create them only after the owner approves the project and variable classification.

```bash
eas env:create --scope project --environment production --name SENTRY_DSN --value "<owner-managed-value>"
```

Three visibility levels:
- **Plaintext** — visible in UI/logs
- **Sensitive** — hidden in UI, readable in build
- **Secret** — only readable inside build job

## Build cache
`eas build --clear-cache` invalidates dependency cache. Use it only after approval for the associated build; cache duration and cost vary by plan and project.

## Reference
`references/02-eas-pipeline.md`

Files in this skill

  • SKILL.md2.5 KB
  • agents/openai.yaml185 B
  • references/02-eas-pipeline.md1.7 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…