I'm the maintainer of xprem (previously expo-open-ota).
It's an open-core, self-hosted solution to manage OTA updates for Expo apps.
The server implements the expo-updates protocol (https://docs.expo.dev/technical-specs/expo-updates-1/).
The project started more than a year ago because I needed to ship a business app inside a highly secured network, so I had to run an "on-premise" OTA server for apps without open internet access.
Since then the project has grown a lot, in particular with the addition of expo-observe support, so you can get your logs/metrics directly in your own server, stored in your own ClickHouse DB.
I also spent a lot of time on performance: in a recent benchmark we simulated traffic from 1 million MAU on a single vCPU, with a p95 < 20ms at 1000 req/s (telemetry enabled).
Benchmark: https://xprem.dev/benchmark (the data and the script to reproduce it are available in the repository).
Website: https://xprem.dev
Repository: https://github.com/mercuretechnologies/xprem
Documentation: https://mercure-technologies.gitbook.io/xprem
I'd love to get your feedback on the project.