Skip to content

Build, Upgrade, and Release

A React Native guide for coding agents. Also covers eas build, app store submission, play store submission, expo sdk upgrade, new architecture, version code.

Release is a repeatable product process, not the last successful build command. Separate preview distribution from store binaries, automate monotonically increasing versions, and rehearse submission before launch day.

Maintain the Project Before Release

  • Upgrade one Expo SDK at a time when practical.
  • Read the SDK and React Native release notes for breaking changes.
  • Align dependencies with bun expo install --fix, run bunx expo-doctor, and rebuild native binaries.
  • Verify libraries against the React Native New Architecture and remove abandoned native dependencies.
  • Test clean install, upgrade from the current store version, background/foreground, and offline startup.

Define Build Profiles

  • Development: debug client and development services.
  • Preview: release-like binary for internal or external testers, isolated from production where possible.
  • Production: store signing, production identifiers, production services, and final update channel/runtime.

Automate build numbers or version codes so every uploaded binary is unique. Keep the human-facing semantic version intentional and tied to release notes.

Prepare Store Metadata and Compliance

Before submission, finish app name, descriptions, screenshots, support and privacy URLs, age/content ratings, data-safety/privacy declarations, encryption answers, account-deletion behavior, review credentials, and reviewer notes. Confirm permission messages explain their feature-specific purpose.

Apple and Google accounts may require agreements, tax, banking, identity, and access setup that code cannot automate. Resolve these early.

Use a Release Gate

  • Types, lint, tests, and critical E2E flows pass.
  • Production environment and signing identities are confirmed.
  • Purchases, deep links, notifications, universal/app links, and authentication callbacks work on physical devices.
  • Crash reporting and release identifiers are visible.
  • Rollback/update response is documented.
  • A teammate installs the exact submitted artifact.

Submit through EAS or the store tooling, then monitor processing and review status. A successful upload is not an approved release.

Sources

Verify release steps against Expo's current documentation for EAS Build, internal distribution, EAS Submit, SDK upgrades, and the React Native New Architecture.

Use this guidance in your coding agent

Install the Better Design MCP once. Your agent then loads this page with one call.

get-react-native-guide({ topic: "react-native-release" })
claude mcp add --scope user better-design --transport http https://better-design.com/api/mcp --header "Authorization: Bearer <YOUR_API_KEY>"
Browse related design systems