Managed CodePush server for React Native. Push OTA updates to your users without app store delays. Zero config, instant setup.
A complete CodePush replacement you own and control.
Push JS bundle updates to users in seconds. No app store review required.
We handle the infrastructure. You focus on shipping. Global CDN included.
One-click rollback to any previous version. Instant recovery from bad deploys.
Only changed files are downloaded. 22MB bundle → 1.5MB diff for users.
Serve bundles from CloudFront, R2, or any S3-compatible storage with global edge.
Track downloads, deploy success rates, and rollout progress in real-time.
$ npm install -g @swyng/cli$ swyngpush login$ swyngpush app add MyApp-iOS ios react-native$ swyngpush release-react MyApp-iOS ios -d ProductionGet OTA updates running in your React Native app in under 5 minutes.
npm install react-native-code-pushswyngpush login
swyngpush app add MyApp-iOS ios react-nativeswyngpush deployment list MyApp-iOS -kimport codePush from 'react-native-code-push';
const codePushOptions = {
serverUrl: 'https://bl-prod-2-ap-south-1.swyng.site',
deploymentKey: 'YOUR_PRODUCTION_KEY',
checkFrequency: codePush.CheckFrequency.ON_APP_RESUME,
};
export default codePush(codePushOptions)(App);<!-- Info.plist --> <key>CodePushDeploymentKey</key> <string>YOUR_PRODUCTION_KEY</string> <key>CodePushServerURL</key> <string>https://bl-prod-2-ap-south-1.swyng.site</string>
swyngpush release-react MyApp-iOS ios -d Production -t "1.0" --description "First OTA update"Just change the server URL in your existing config. The protocol is fully compatible.
No surprises. Scale as you grow.
Need more? Contact us for enterprise plans.
Everything you need from the command line.
swyngpush loginAuthenticate with swyng (interactive email/password)swyngpush app add <name> <os> <platform>Create a new app (auto-creates Staging + Production)swyngpush deployment list <app> -kList deployments with their keysswyngpush release-react <app> <platform> -d <deployment> -t <version> --description "notes"Bundle and push an updateswyngpush release-react <app> ios -d Production -t 1.22 -mPush a mandatory update targeting v1.22swyngpush release-react <app> ios -d Staging -r 25Push to 25% rolloutswyngpush rollback <app> <deployment>Rollback to the previous releaseswyngpush rollback <app> Production --target-label v2Rollback to a specific version| Flag | Description | Default |
|---|---|---|
| -d, --deployment-name | Target deployment | Staging |
| -t, --target-binary-version | Target app binary version | auto-detect |
| -m, --mandatory | Mark as mandatory update | false |
| --description | Release notes | — |
| -r, --rollout | Rollout percentage (1-100) | 100 |
| -x, --disabled | Create release as disabled | false |
| --entry-file | Custom entry file | index.js |