A cross-platform, open-source VPN client with support for multiple protocols (Xray, WireGuard, OpenVPN) and advanced routing capabilities.
- Multi-Protocol Support: VMess, VLESS, Reality (Xray), WireGuard, OpenVPN
- Cross-Platform: iOS, Android
- Subscription Management: Import server lists via URL
- Advanced Routing: Split tunneling, domain rules, app-level routing
- Kill Switch protection
- Auto-connect on startup
- No root/jailbreak required
- Real-time connection stats
- Server latency testing
- Optimized native engine
flowchart LR
subgraph subGraph0["ReactNative Application"]
UI@{ label: "VPNclient App (<span style=\"color:\">ReactNative UI)</span>" }
end
subgraph subGraph1["ReactNative Plugin"]
Plugin["VPNclient Engine ReactNative"]
end
subgraph subGraph2["Native Core"]
Core["VPNclient Engine Library"]
end
UI --> Plugin
Plugin --> Core
Core --> iOS["iOS"] & Android["Android"]
UI@{ shape: rect}
Technology Stack:
- Frontend: React Native, TypeScript
- State: Zustand/Redux Toolkit
- Styling: Restyle/NativeWind
- Testing: Jest, Detox
- CI/CD: GitHub Actions, Fastlane
- Modular Monorepo (если Web и Mobile): используйте Turborepo или Nx — легко переиспользовать логику и UI между web/mobile.
- Clean Architecture: делите код на слои
presentation
/application
/domain
/infrastructure
.
@react-navigation/native
с bottom-tabs + stack-nesting (типично для e-commerce).- Deep Linking + Universal Links (важно для маркетинга и пушей).
Zustand
илиRedux Toolkit
с RTK Query (удобно для кеширования API).- Не забывайте про react-query /
TanStack Query
, если делаете акцент на data fetching.
- Atomic Design подход — делите компоненты на
Atoms
,Molecules
,Organisms
. - Используйте
Restyle
илиNativeWind
для стилизации.
- REST-first, GraphQL только если бэкенд готов его поддерживать.
- Автоматическая генерация типов через Swagger / OpenAPI.
- GitHub Actions или GitLab CI.
- Автоматическая сборка на TestFlight и Google Play Internal (через EAS от Expo или fastlane).
- ESLint + Prettier + Husky + Lint-Staged.
- Строгая типизация (TypeScript).
- Codegen типов из API (Swagger / GraphQL).
- Unit:
Jest
,Testing Library
. - E2E:
Detox
(для React Native). - Вводите покрытие критического UI и flows (логин, корзина, checkout).
- Kanban/Agile + weekly sprint planning.
- Внедрите CI/CD и Feature Flags (например, с
LaunchDarkly
илиConfigCat
) для гибких релизов.
Download from official stores:
# Clone repository
git clone https://github.com/VPNclient/VPNclient-react-native-app.git
cd VPNclient-react-native-app
# Install dependencies
yarn install
# Run on iOS/Android
yarn ios
yarn android
Platform Requirements:
- Android 6.0+
- iOS 15.6+
- Node.js 18+
Part of the VPNclient Ecosystem: