
Контекст
Клиент решил запустить собственный VPN-продукт. NekaSoft подключился на старте и взял на себя техническую реализацию клиентских приложений для Windows, macOS, Linux, Android и iOS.
Клиент пришёл с достаточно чёткими бизнес-требованиями и готовыми дизайн-макетами. При этом выбор технического подхода, архитектуры и конкретных инструментов реализации оставался на стороне NekaSoft.
За что отвечали мы
Мы переводили бизнес-требования в техническое решение и отвечали за реализацию и выпуск приложений на всех пяти платформах.
Технический подход
- Выбор основы приложений
- Архитектура решения
- Кроссплатформенное ядро с точечным нативным кодом
Разработка
- Desktop- и mobile-клиенты
- Интеграция Xray по требованиям клиента
- Сложная сетевая логика и маршрутизация
- Бэкенд и DevOps
Релизы
- Инфраструктура сборки и релизов
- Подпись кода, сертификаты, provisioning-профили
- Публикация с учётом требований каждой платформы
Поддержка
- Техническая поддержка после релизов
- Развитие продукта после запуска
Решение
Приложения построены на кроссплатформенных технологиях, основная разработка велась на JavaScript и TypeScript.
- Electron-приложения для Windows, macOS и Linux
- Cordova-приложения для iOS и Android
- Точечный нативный код, в том числе Swift на платформах Apple
- Интеграция Xray и кастомная маршрутизация
- Сложная сетевая логика
- Полный цикл релиза: сборка, подпись, сертификаты, публикация
Приложения выпущены как единая кроссплатформенная экосистема: Electron для десктопа и Cordova для мобильных, а нативный код добавлялся там, где этого требовали платформенные интеграции. Сложнее всего была экосистема Apple: сетевую реализацию, платформенные ограничения и требования публикации приходилось учитывать одновременно.
Результат
Клиент получил production-ready VPN-продукт с приложениями для Windows, macOS, Linux, Android и iOS.
- Приложения опубликованы и вышли к реальным пользователям
- Они стали клиентской частью коммерческого VPN-сервиса
- Клиент смог запустить, развивать и продавать собственный VPN-продукт на основных desktop- и mobile-платформах
Сроки
Основная работа над проектом продолжалась около двух лет.
После основного цикла разработки продукт продолжил развиваться уже с растущим участием внутренней технической команды клиента. Приложения остаются в production и коммерчески используются до сих пор.
Технологии
Swift использовался для нативных интеграций там, где кроссплатформенного слоя на платформах Apple не хватало.
Нужен один продукт сразу на десктопе и мобильных, включая релизы и публикацию в магазинах?