Skip to content

CodePushGo CLI overview

The CodePushGo CLI is the React Native equivalent of Capgo’s update workflow. It keeps the app identity tied to the native bundle ID and uploads JavaScript bundles to the Cloudflare Worker backend.

What the CLI does

  • Detects the React Native bundle ID from Expo config, app.json, Android Gradle files, or iOS Xcode project files.
  • Writes codepushgo.config.json for repeatable app identity and endpoint settings.
  • Bundles React Native JavaScript for iOS or Android.
  • Uploads releases with channel, rollout, mandatory flag, notes, and platform metadata.
  • Keeps uploads on the Worker path. Supabase Edge Functions are not used.

First run

  1. Authenticate with an API key from the console.

    Terminal window
    npx @codepushgo/cli@latest login [API_KEY]
  2. Initialize from the React Native project root.

    Terminal window
    npx @codepushgo/cli@latest init
  3. Bundle JavaScript for a platform.

    Terminal window
    npx @codepushgo/cli@latest bundle --platform ios
  4. Upload the generated bundle.

    Terminal window
    npx @codepushgo/cli@latest upload

Identity model

By default, CodePushGo uses the native bundle ID as the app ID. You should only pass --app-id when intentionally overriding that native identity.

Terminal window
npx @codepushgo/cli@latest init --app-id com.example.app
npx @codepushgo/cli@latest release com.example.app --platform android --version 1.0.1

CI/CD usage

The CLI is built for existing CI/CD workflows. Run the same commands after tests pass, and keep the API key in your CI secret store.