To the Max — открытый VPN-клиент на Flutter с поддержкой VLESS + Reality
Привет, Хабр. Несколько недель назад начал писать собственный VPN-клиент на Flutter — просто потому что хотел разобраться как это работает изнутри. Получилось приложение To the Max, которое я сейчас выкладываю в открытый доступ и ищу первых пользователей для обратной связи.
Что это такое
VPN-клиент для Windows на Flutter, работающий поверх xray-ядра. Протокол — VLESS с транспортом Reality (XTLS-rprx-vision). Reality — это современный транспортный протокол, в котором клиент и сервер обмениваются данными поверх стандартного TLS-соединения. Меня привлёк именно технический аспект: как устроен handshake, как xray-ядро управляет соединениями, как это всё интегрируется в нативное Windows-приложение.
Что реализовано
Два режима работы — System Proxy (браузер и большинство приложений) и TUN tunnel через tun2socks (весь трафик ОС)
Иконка в системном трее с индикацией статуса подключения
Защита от запуска второго экземпляра приложения
Автоматическая очистка зависших процессов xray при перезапуске
Подключение через стандартную vless:// ссылку из любой панели (3x-ui, Marzban и др.)
Отображение типа защиты транспорта (VLESS+Reality / VLESS+TLS) прямо в интерфейсе
Логи с цветовой подсветкой внутри приложения
Валидация Reality-параметров при сохранении конфига
Архитектура
Приложение построено на абстракции VpnBackend — платформенная реализация скрыта за единым интерфейсом, UI работает только с VpnService. Это позволяет в будущем добавить поддержку других платформ не трогая логику.
Для меня это был хороший способ разобраться с управлением дочерними процессами в Dart, сетевым роутингом на уровне ОС, работой TUN-адаптера на Windows и тонкостями xray-конфигурации.
Хочу попробовать, но нет сервера
Для работы нужен собственный VPS с установленным xray (например через 3x-ui). Если у вас нет сервера — напишите в комментариях, я дам временный доступ к своему на 48 часов первым желающим, чтобы можно было попробовать приложение без лишних настроек.
Что хочу получить от вас
Приложение рабочее, но сырое. Буду рад любой обратной связи:
Работает ли у вас подключение и насколько стабильно
Что непонятно или неудобно в интерфейсе
Баги, которые поймаете
Предложения по функциям
Исходники и сборки для Windows здесь: https://github.com/vedomyyy/To-the-Max-VPN
Заранее спасибо всем, кто попробует и напишет что думает — для меня это первый публичный проект такого рода и любая обратная связь ценна.