Все проекты

Кроссплатформенный VPN-клиент

Клиентские приложения коммерческого VPN-продукта на пяти платформах

Техническая реализация клиентской части VPN-продукта: от выбора подхода и архитектуры через разработку, сетевую логику и интеграцию Xray до подписи кода, публикации в магазинах и поддержки после релизов.

5
платформ
≈2 года
разработки
Production
коммерчески используется
Полная
техническая реализация
Кроссплатформенный VPN-клиент

Контекст

Клиент решил запустить собственный VPN-продукт. NekaSoft подключился на старте и взял на себя техническую реализацию клиентских приложений для Windows, macOS, Linux, Android и iOS.

Клиент пришёл с достаточно чёткими бизнес-требованиями и готовыми дизайн-макетами. При этом выбор технического подхода, архитектуры и конкретных инструментов реализации оставался на стороне NekaSoft.

За что отвечали мы

Мы переводили бизнес-требования в техническое решение и отвечали за реализацию и выпуск приложений на всех пяти платформах.

1

Технический подход

  • Выбор основы приложений
  • Архитектура решения
  • Кроссплатформенное ядро с точечным нативным кодом
2

Разработка

  • Desktop- и mobile-клиенты
  • Интеграция Xray по требованиям клиента
  • Сложная сетевая логика и маршрутизация
  • Бэкенд и DevOps
3

Релизы

  • Инфраструктура сборки и релизов
  • Подпись кода, сертификаты, provisioning-профили
  • Публикация с учётом требований каждой платформы
4

Поддержка

  • Техническая поддержка после релизов
  • Развитие продукта после запуска

Решение

Приложения построены на кроссплатформенных технологиях, основная разработка велась на 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 и коммерчески используются до сих пор.

Технологии

ElectronCordovaTypeScript / JavaScriptXraySwift

Swift использовался для нативных интеграций там, где кроссплатформенного слоя на платформах Apple не хватало.

Нужен один продукт сразу на десктопе и мобильных, включая релизы и публикацию в магазинах?