Open source · MIT
Ship the fix.
Skip the store queue.
Self-hosted over-the-air updates for React Native and Flutter. You run the server; your users get each patch without waiting for a store review.
npm install -g @patchkite/cli
# fix the bug, then
$ patchkite release-react MyApp android
→ Staging, v12
$ patchkite promote MyApp Staging Production -r 10
→ Production, 10% of users
$ patchkite rollback MyApp Production
→ back on v11React Native 0.80+ · Android and iOS
Flutter · Android
Server · one Docker Compose file
What you get
Staged rollouts
Release to Staging, promote to Production, and start at 10% of users. A rollout can only grow, never shrink by accident.
Small downloads
Devices download only what changed. Large binaries are sent as bsdiff patches, so a small change is a few kilobytes.
Crash rollback
If an update crashes before your app calls notifyAppReady(), the device returns to the last working version on its own.
Signed updates
Sign releases with your RSA key. The device verifies the signature and refuses anything that does not match.
Install metrics
See how many devices downloaded, installed, or rolled back each release, per deployment.
Your server, your data
PostgreSQL and S3-compatible storage on a machine you control. Accounts are created by an admin, not by strangers.
A release, from fix to rollback
The same four commands cover a normal day. If you have used CodePush, the model will feel familiar: apps, Staging and Production deployments, release, promote, rollback.
Release
patchkite release-react MyApp androidBundles the JavaScript and uploads it to Staging.
Promote
patchkite promote MyApp Staging Production -r 10Copies the release to Production for 10% of users.
Widen
patchkite patch MyApp Production -r 100Raises the rollout once the metrics look good.
Undo
patchkite rollback MyApp ProductionPoints Production back at the previous release.
Run it in an afternoon
The server and dashboard ship as one image. Put PostgreSQL and S3-compatible storage next to it, point your CLI at it, and create the first admin account.
Deploy to production