Roadmap
Where Otapush is heading. Items are roughly ordered; nothing here is a promise with a date.
Now (current release)
- Expo Updates Protocol v1 for iOS and Android.
- Expo managed and bare React Native projects (
otapush initpatchesapp.json, orAndroidManifest.xml+Expo.plistfor bare RN; publish usesexpo exportorreact-native bundle). - Channels with per-platform state, promote and rollback.
- Code signing (per-app RSA keypairs).
- Stats: MAU with free-tier limit, per-day checks/downloads/installs/failures, channel and platform breakdowns.
- CLI (
otapush) for the full publish workflow. - Self-serve plans: card and SBP payments in rubles, and invoices for companies. See Billing & plans.
Next
- Teams and roles. Multiple users per organization, owner/developer/viewer roles, per-app access control.
- Update targeting. Percentage rollouts per channel, pause/resume, and targeting by app version.
- Failure reporting. The server already counts a
failureevent type and the portal has a place to show it, but nothing reports one:expo-updateshas no callback for a failed launch. Needs a small client-side hook plus an endpoint to receive it. - Webhooks. Notify Slack/Discord/CI on publish, rollback, and failure-rate spikes.
Later
- Payments outside Russia. Card payments are processed in rubles through Russian acquiring today. International payment methods are not self-serve yet — write to us and we will arrange it.
- Other stacks. The protocol piece is React Native specific, but the channel/rollout machinery generalizes. Capacitor and desktop (Electron) update feeds are on the table.
- Differential updates. Serve bundle diffs instead of full bundles to cut download sizes.
Non-goals
- A build service. Building binaries is deliberately left to your CI (
gradlew,xcodebuild, fastlane) — Otapush is an update delivery and control layer, not an EAS Build replacement. - Lock-in. The server speaks the documented Expo Updates Protocol v1 and your app uses the stock
expo-updatesclient, so leaving costs one URL in your config — see Protocol.
Missing something?
If a gap on this page is blocking you, tell us — what is actually asked for moves up the list. The one constraint that outranks everything else is compatibility with stock expo-updates clients.