FAQ
If you have questions not answered here, ask on Discord or open an issue on GitHub.
What is CodePushGo?
CodePushGo is a React Native live update platform. It lets teams ship JavaScript bundle and asset updates to installed iOS and Android apps without waiting for a new app-store review.
Is this built for React Native?
Yes. CodePushGo is built around React Native app identity, JavaScript bundle delivery, channels, rollbacks, stats, API, and console onboarding. The app identity is tied to the native bundle ID by default.
No. CodePushGo only updates JavaScript bundles and bundled assets. Native code, native modules, permissions, entitlements, signing, and platform configuration still require normal App Store and Play Store releases.
What is the app ID?
The app ID is the native bundle ID by default:
- iOS:
PRODUCT_BUNDLE_IDENTIFIER - Android:
applicationId - Expo:
ios.bundleIdentifierorandroid.package
The CLI detects this during npx @codepushgo/cli@latest init, so the console, backend, CLI, and updater use the same identity.
What is the difference between a release and a bundle?
A bundle is the JavaScript and asset payload produced from your React Native app.
A release is that bundle plus metadata: app ID, platform, version, channel, rollout, checksum, notes, and upload path.
How do I create an account?
Use codepushgo.com/register. Registration only asks for identity fields and password. Plan intent is recorded later inside console onboarding.
How do I upload an update?
Use the one-step release command:
npx @codepushgo/cli@latest release --platform ios --version 1.0.1 --channel productionOr upload an existing bundle directory:
npx @codepushgo/cli@latest upload --platform android --version 1.0.1 --bundle-dir ./build/codepushgo/android --channel productionCan I use CodePushGo from CI?
Yes. Run the CLI after installing dependencies and building the React Native JavaScript bundle. Public docs should use standard npm and npx commands.
- run: npm install- run: npx @codepushgo/cli@latest release --platform ios --version ${{ github.sha }} --channel production --token ${{ secrets.CODEPUSHGO_TOKEN }}Does CodePushGo store my source code?
No. CodePushGo receives built JavaScript bundle artifacts and metadata. Do not upload source directories unless your own build process puts source in the bundle output.
What can I use live updates for?
Use live updates for:
- JavaScript bug fixes
- UI and copy changes implemented in JavaScript
- bundled asset updates
- emergency production fixes
- staged JavaScript rollout and rollback
Do not use live updates for native code changes.
How do channels work?
A channel points a group of devices to a release. Common channels are production, beta, and development. The updater checks the channel configured in your React Native app and receives the release attached to that channel.
How do rollbacks work?
Rollbacks move a channel back to a previous release. Devices on that channel receive the rollback target on their next update check. Rollbacks only affect JavaScript bundles and assets.
What platforms are supported?
CodePushGo is focused on React Native iOS and Android.
Does CodePushGo use Supabase Edge Functions?
No. The backend runtime is a Cloudflare Worker. Supabase-backed deployments use database/storage integration and migrations, not Supabase Edge Functions.
What information is sent to CodePushGo?
Update checks can include:
- app ID / native bundle ID
- platform
- channel
- app version
- current bundle version
- device identifier used for stats and deduplication
Do I need to keep my app ID secret?
No. The native bundle ID is already part of the app binary and can be public. API tokens and signing/encryption keys must stay private.
Does CodePushGo comply with app-store policy?
Code push is widely used for interpreted JavaScript updates in React Native apps. You are still responsible for App Store and Play Store policy compliance. Do not use live updates to change the app’s primary purpose or bypass native review for native functionality.
Can I self-host CodePushGo?
The repository is open source at github.com/CodePushGo/CodePushGo. The backend is designed for Cloudflare Worker deployments.