Дорожная карта
Куда движется Otapush. Пункты упорядочены приблизительно; ничто здесь не является обещанием с датой.
Сейчас (текущий релиз)
- Expo Updates Protocol v1 для iOS и Android.
- Проекты Expo managed и bare React Native (
otapush initпатчитapp.json, илиAndroidManifest.xml+Expo.plistдля bare RN; публикация используетexpo exportилиreact-native bundle). - Каналы с состоянием по платформам, promote и откат.
- Подпись кода (пары ключей RSA на приложение).
- Статистика: MAU с лимитом бесплатного тарифа, checks/downloads/installs/failures по дням, разбивки по каналам и платформам.
- CLI (
otapush) для полного цикла публикации. - Самостоятельная оплата тарифов: карта и СБП в рублях, счёт для юрлиц. См. Тарифы и оплата.
Дальше
- Команды и роли. Несколько пользователей в организации, роли owner/developer/viewer, контроль доступа по приложениям.
- Таргетинг обновлений. Процентные раскатки по каналам, пауза/возобновление, таргетинг по версии приложения.
- Отчёты об ошибках запуска. Сервер уже считает тип события
failure, и в портале есть место, где его показать, но сообщать о нём некому: уexpo-updatesнет колбэка на неудачный запуск. Нужен небольшой клиентский хук и эндпоинт, который его примет. - Вебхуки. Уведомления в Slack/Discord/CI о публикациях, откатах и всплесках частоты ошибок.
Позже
- Оплата не из России. Сегодня оплата картой проходит в рублях через российский эквайринг. Международные способы оплаты пока не самостоятельные — напишите нам, договоримся.
- Другие стеки. Протокольная часть специфична для React Native, но механика каналов/раскаток обобщается. На столе — ленты обновлений для Capacitor и десктопа (Electron).
- Дифференциальные обновления. Отдавать диффы бандлов вместо полных бандлов, чтобы уменьшить объём загрузок.
Не-цели
- Сервис сборок. Сборка бинарников намеренно остаётся на вашем CI (
gradlew,xcodebuild, fastlane) — Otapush это слой доставки и управления обновлениями, а не замена EAS Build. - Lock-in. Сервер говорит по задокументированному Expo Updates Protocol v1, а приложение использует штатный клиент
expo-updates— уход стоит одного URL в конфигурации, см. Протокол.
Чего-то не хватает?
Если пробел на этой странице мешает вам работать — напишите нам: то, о чём действительно просят, поднимается в списке. Единственное ограничение, которое важнее всего остального, — совместимость со штатными клиентами expo-updates.