2 apps CodePush
Hot Updater screenshot thumbnail

Hot Updater

An app store review takes days, but a broken checkout flow takes minutes to cost you users: Hot Updater lets React Native teams ship JavaScript fixes straight to installed apps from a server they control, no store submission required. Deploy a new bundle with the CLI, and devices pick it up on their next update check, whether they run iOS or Android. The web console shows what you have shipped, which app versions receive which bundle, and lets you roll back a bad release before the support tickets pile up. Bundle diffing keeps downloads small: unchanged files stay on the device, changed Hermes bundles travel as compact patches, and the server quietly drops any patch that is not smaller than the full file. Releases target specific semantic app versions, so a fix built for 2.3 users never lands on 3.0 devices. Storage and metadata live where you choose, from S3-compatible buckets and Cloudflare R2 with D1 to Supabase, Firebase, Azure, or your own PostgreSQL, swapped through adapters rather than rewrites. Insights record update events so you can watch adoption as a rollout spreads, API keys gate which apps may check in, and remote configuration tunes app behavior without another binary release. The server itself runs as a compact Node service in Docker on port 3000 next to PostgreSQL, with token-protected admin routes. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.

Deploy
Xprem screenshot thumbnail

Xprem

xprem is a self-hosted update server for Expo applications that speaks the official Expo Updates protocol, so any app built with expo-updates can fetch its bundles from your infrastructure instead of a hosted service. Publishing works from the eoas CLI, from CI, or from the dashboard, and devices receive the corrected bundle on their next check with no app store review in between. Channels such as production and staging map to branches, which means each build flavor receives exactly the code meant for it. A rollout can serve an update to a slice of the fleet first and widen as confidence grows, and a bad release rolls back instantly instead of stranding users. One channel can even serve two branches at once, splitting devices deterministically for A/B tests. Every manifest is signed with a private key you own, and the matching certificate embedded in the app makes expo-updates refuse anything that fails verification, so a compromised bucket cannot push code into your product. The bundles themselves live in your S3, Google Cloud Storage, Azure Blob, Cloudflare R2, MinIO, or local storage and download through your CDN, while a single server hosts as many applications as you ship. Running on a dedicated VPS on RepoCloud with guaranteed CPU, RAM, and SSD, full root SSH access, and a browser serial console. MIT licensed.

Deploy