E-NET VPN Windows App

Types WPF | MVVM
API Yes
.NET Version 8
Projectdate 2025

The desktop component of the VPN Platform is an advanced VPN client developed in .NET 8 WPF, featuring a modern UI, real-time statistics, and deep integration with OpenVPN. In addition, several Linux shell scripts have been developed to automatically install, configure, and connect new servers to the backend API.


Key Features

  • Auto-login: Users can save their login credentials so the app logs in automatically at startup.
  • Server list with ping: Servers are fetched via the API and displayed with latency measurement, filters (country/city/type), and favorites.
  • Private servers: Specific servers are only visible to certain users based on API permissions.
  • Kill Switch: Disconnects all network traffic if the VPN drops to prevent IP leaks.
  • Adblocker: Blocks ads using DNS filtering.
  • Auto-connect / reconnect: Automatically connects to the last used server on startup or after a disconnect.
  • Interactive Globe (AmCharts): Displays all servers and your own location on a clickable globe.
  • Realtime statistics: Graphs show uploaded/downloaded data, speed, and active uptime.
  • Discord RPC: Status information is shown on your Discord profile.
  • Logging: Detailed logs for debugging, connections, latency, errors, and actions.
  • Multi-language Support: Interface available in multiple languages via resx files.
  • Windows Startup: App can automatically start with Windows.

 

Technical Approach

  • .NET 8 WPF (MVVM): Clear separation of UI and logic. Dependency Injection is used to manage services, viewmodels, windows, helpers, and configurations.
  • OpenVPN CLI Integration: Connection management via a centralized OpenVPNManager service that controls the CLI to start, stop, and monitor connections, including log parsing and status analysis.
  • AmCharts + JSON Geodata: Interactive globe with custom server markers and real-time feedback.
  • Bash Scripts: Automate the installation and configuration of OpenVPN servers, including firewall hardening and registration via a secure API request.

 

By developing this client and the accompanying scripts, I gained experience in native Windows development, VPN networks, shell scripting, and real-time UI components. The app is designed for end users, combining ease of use with technical depth.

Back