react-native-aeropush
v1.0.9
Published
Zero-dependency Over-The-Air update SDK for React Native. New Architecture (Turbo Module) native, server-driven bundle delivery with crash-guard auto-rollback and native fingerprint compatibility checks.
Downloads
1,381
Maintainers
Readme
▲ react-native-aeropush
The self-hosted OTA platform for React Native — a modern CodePush alternative
Ship JavaScript bundle updates to production apps without an App Store / Play Store release — with automatic crash rollback, native-fingerprint safety, and differential (patch) updates so a device a few versions behind downloads only the diff.
Website · Documentation · Dashboard · Pricing
Why AeroPush?
- ⚡ Instant OTA updates — push JS bundle changes to live apps in seconds, skipping the store review cycle.
- 📦 Differential (patch) updates — devices download only the binary diff, not the whole bundle, with a full-download fallback.
- 🛡️ Automatic crash rollback — a three-layer crash guard (native launch counter + JS handler + React error boundary) reverts a bad bundle on its own.
- 🧬 Native compatibility fingerprint — refuses bundles compiled against incompatible native code, so an old binary never gets a JS update it can't run.
- 🔒 Bundle-id scoping — an app key only ever works for its own app; mismatched clients are refused.
- 🎚️ Staged rollouts — release to a percentage of devices, watch, then dial to 100% or pause.
- 🪶 Zero third-party native dependencies — a proper New Architecture Turbo Module; downloading, unzipping and storage all use first-party platform APIs.
- 🏠 Self-hostable — run the whole platform (backend, dashboard, CLI, bundle storage) on your own infrastructure.
Get started
Install the package:
npm install react-native-aeropushThen create an account and generate an app key, and follow the installation guide for the iOS and Android setup.
Full SDK setup, usage and CLI reference live in the documentation — this README stays intentionally light.
Key features
Differential updates
Devices a few versions behind receive a compact binary patch instead of the full bundle. Patches are generated automatically on release, verified by SHA-256, and applied atomically — with a full-bundle download as the always-present fallback, so correctness never depends on the patch.
Ed25519 bundle signing
A checksum proves a bundle arrived intact; a signature proves you published it. Releases are signed with a private key that never leaves your machine, and verified on device against a public key baked into the binary at build time — so even a fully compromised update server can't get code onto a device. Set it up with npx aeropush signing keygen.
Automatic rollback & crash recovery
Every launch increments a native counter before the bundle loads; a successful mount clears it. A bundle that crashes on launch — even natively, before JS runs — is rolled back automatically. JS errors and React render crashes feed the same guard.
Native compatibility fingerprint
Each binary carries an auto-computed hash of its native dependency set. AeroPush only ever offers a device a bundle its binary can actually run, giving strict two-way generational isolation between app versions.
App update prompts
When a new binary lands on the stores, prompt users still on an older build — as a modal or a slim banner, dismissible or forced, configured per app version from the dashboard. Snooze, minimum-OS and grace-period safeguards are built in, and prompts only ever reach real App Store / Play Store installs. Testing on your own device build is one flag: appUpdateTestMode.
Advanced OTA controls
Multiple channels (production / staging / beta), staged percentage rollouts, mandatory releases, per-release crash intelligence, and role-based team access — all from a single control room.
Documentation
| Guide | | |---|---| | Introduction | https://aeropush.tech/docs | | Installation (iOS & Android) | https://aeropush.tech/docs/installation | | SDK usage & API | https://aeropush.tech/docs/usage | | App update prompts | https://aeropush.tech/docs/app-updates | | Bundle signing | https://aeropush.tech/docs/signing | | CLI reference | https://aeropush.tech/docs/cli |
Use cases
A CodePush replacement — CodePush is retired; AeroPush gives you the same instant-update workflow plus differential updates, crash intelligence and your own infrastructure.
- ✅ Ship JS fixes without a store release
- ✅ Automatic rollback on bad releases
- ✅ Staged rollouts and channels
An Expo Updates alternative — for bare / non-Expo React Native apps that want first-class OTA without vendor lock-in.
Enterprise & self-hosted — run the entire platform on your own servers, air-gapped if you need it, with role-based access and org-wide policies.
Requirements
- React Native 0.76+ (New Architecture enabled)
- iOS 13.4+
- Android minSdk 24+
Enterprise & support
Need self-hosting, SSO or an SLA? See the enterprise page or get in touch.
License
MIT — part of the AeroPush OTA platform.
