A simple Windows VPN client built with Flutter and Dart.
FoxyVPN uses a Firefox account and Mozilla's VPN infrastructure to provide VPN access on Windows.
Free β’ No subscription β’ Windows 10/11
| Feature | Description |
|---|---|
| π‘ System-wide VPN | Routes Windows traffic through a Wintun adapter and VPN tunnel |
| π¦ Firefox account | Sign in with a Firefox account |
| π Multiple servers | Choose from available VPN locations |
| π Proxy-only mode | Local SOCKS5/HTTP proxy without VPN adapter or administrator rights |
| π₯ Windows system proxy | Automatically configure the Windows proxy |
| π Upstream proxy | Connect through an existing SOCKS5 or HTTP proxy |
| π Encrypted DNS | DNS-over-HTTPS with fake-IP handling |
| πͺ Exit verification | Checks that the public IP has changed |
| π Live statistics | View connection speed and application logs |
| π Themes | Dark, light and system themes |
| π€ Languages | English and ΩΨ§Ψ±Ψ³Ϋ with RTL support |
| π Update checker | Checks for newer GitHub releases |
| π± Compact UI | Fixed 360Γ800 window matching the Android layout |
Note
Per-app split tunneling is currently not available on Windows.
## π§Ώ How It Works
Windows Apps
β
βΌ
Wintun Adapter
β
βΌ
hev-socks5-tunnel
β
βΌ
Local Proxy
127.0.0.1:21080
β
βΌ
HTTP/2 + TLS
β
βΌ
Fastly Edge
β
βΌ
Internet
| File | Purpose |
|---|---|
lib/vpn/vpn_controller.dart |
VPN connection flow, watchdog, server switching and statistics |
lib/vpn/route_manager.dart |
Windows routes and DNS management |
lib/vpn/local_socks5_server.dart |
Local SOCKS5 and HTTP proxy |
lib/vpn/system_proxy_manager.dart |
Windows system proxy management |
lib/vpn/h2_upstream_session.dart |
HTTP/2 connection to the VPN edge |
lib/data/ |
Authentication, server data, settings and secure storage |
lib/ui/ |
Application screens and user interface |
- Create a free Firefox account.
- Launch
FoxyVPN.exe. - Sign in with your Firefox account.
- Select a location.
- Press the power button.
Full-VPN mode requires administrator privileges.
Important
The free VPN allowance is limited. When the monthly allowance is exhausted, VPN connections will stop until the allowance resets.
- Windows 10 / 11 x64
- Administrator privileges for Full-VPN mode
- Flutter SDK for building
- Visual Studio with Desktop development with C++
git clone https://github.com/M-RTZ1/FoxyVPN.git
cd FoxyVPN
flutter pub get
flutter build windows --releaseBuild output:
build\windows\x64\runner\Release\
Before committing:
flutter analyze
flutter test- Update the version in
pubspec.yaml. - Create a GitHub Release using the same version.
- Build the application with:
flutter build windows --release- ZIP the entire
Releasefolder. - Upload the ZIP to the GitHub Release.
Important
Do not upload only FoxyVPN.exe. The application also requires its DLL files and data directory.
Full-VPN mode:
- Requires administrator privileges
- Creates the Wintun adapter
- Takes over the IPv4 default route
- Configures DNS
- Routes system traffic through the VPN
Proxy-only mode runs a local proxy without creating a VPN adapter.
Default address:
127.0.0.1:21080
The proxy supports:
- SOCKS5
- HTTP proxy
- HTTP
CONNECT
No administrator privileges are required.
FoxyVPN can configure the Windows system proxy automatically.
The previous proxy settings are restored when the VPN disconnects.
FoxyVPN can connect to the VPN service through an existing:
- SOCKS5 proxy
- HTTP proxy
The upstream proxy can also be copied from the current Windows system proxy settings.
In Full-VPN mode, the upstream proxy is bypassed from the VPN route to prevent routing loops.
FoxyVPN uses hev-socks5-tunnel together with Wintun.
The required native files are included in:
third_party\hev-socks5-tunnel\bin\
A fresh clone therefore does not require a separate tunnel-engine download.
If the tunnel files are missing, Full-VPN mode will not start, while Proxy-only mode can still be used.
| Problem | Possible solution |
|---|---|
| Tunnel exits immediately | Check that wintun.dll and the tunnel files are present |
| Nothing loads after connecting | Check the Logs tab and try another server |
| Route errors | Check whether another VPN or security software is modifying routes |
| Proxy remains enabled after a crash | Disable the Windows system proxy manually |
| Quota error | The monthly VPN allowance has been exhausted |
To disable the Windows system proxy:
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f- No per-app split tunneling
- Windows-specific route and DNS management
- Windows system proxy support
- Speed statistics use the local proxy counters
- Compact desktop interface
- VPN routing
- DNS management
- SOCKS5/HTTP proxy
- Windows system proxy
- Upstream proxy support
- App icon and logo
- Installer and auto-update
- IPv6 support
- Per-app split tunneling
- HTTP/3
- firefox-vpn-client β Go reference client
- FoxyVPN β Android version
- hev-socks5-tunnel β tunnel engine
- Wintun β Windows tunnel driver
- Flutter β desktop UI framework
Contributions are welcome.
For larger changes, please open an issue before submitting a pull request.
Before submitting a pull request, make sure these commands pass:
flutter analyze
flutter testFoxyVPN is an unofficial client and is not affiliated with, endorsed by, or supported by Mozilla or Fastly.
Review the source code before using the application with your Firefox account or network traffic.
This project is licensed under the MIT License.
See the LICENSE file for details.



