{"repo":"mercuretechnologies/xprem","free":true,"listed":false,"github":"https://github.com/mercuretechnologies/xprem","clone":"git clone https://github.com/mercuretechnologies/xprem.git","description":"Self-hosted Expo OTA Updates alternative to EAS Update, on the official Expo Updates protocol. Multi-app dashboard, progressive rollouts, instant rollbacks, and per-update crashes, metrics and logs from every device via expo-observe. Your bucket, your CDN, your data. Formerly expo-open-ota.","language":"Go","stars":487,"topics":["eas","eoas","expo","go","golang","react-native","expo-open-ota","expo-custom-updates-server","eas-updates","expo-updates"],"license":null,"category":"mobile-apps","readme_excerpt":"xprem: Self-hosted OTA updates and control plane for Expo apps Formerly known as Expo Open OTA (expo-open-ota): same project, same maintainers, renamed to respect Expo's trademark. xprem serves over-the-air (OTA) updates to Expo and React Native apps running expo-updates , through the official Expo Updates protocol , as an open-source alternative to EAS Update. Around the updates it runs a full control plane: branches, channels, progressive rollouts, and per-update health, metrics, events and logs coming back from every device through expo-observe. Documentation · Quick start · Website · Issues · Matrix · Contact The documentation is exposed as an MCP server : plug it into Cursor, VS Code, Claude Code or any MCP client. xprem has served OTA updates in production since early 2025, to apps totaling more than a million monthly active users. Features - Publish, roll back, republish OTA updates from the eoas CLI, in CI or from the dashboard - Channels : each build ships with a channel baked in; point the channel at a branch to decide what those builds receive, and remap it to roll out or roll back without a rebuild or store review - Progressive rollouts : serve an update to a percentage of a branch and raise it as health data comes in; the split is deterministic and needs no per-device state - A/B testing : one channel can serve two branches at once, with devices split deterministically between them - Multi-app : one server hosts all your Expo apps, each with its own branches, cha","default_branch":null,"files":null,"tree":[],"storefront":"/r/mercuretechnologies","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/mercuretechnologies/xprem/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}