LoonaVPN App

Types EF Core | WPF | MVVM
API Yes, 3th party
.NET Version 6
For a friend, I developed a VPN application, called LoonaVPN, built in WPF .NET with the MVVM design pattern. This application provides a user-friendly interface that allows users to easily connect to a VPN server, with support for both OpenVPN and WireGuard.
 
  • Github: Private

Key Features of the Application:

  • Authentication (Auth): The app uses an API from LoonaVPN for secure user authentication, ensuring that only authorized users can access the VPN services.
  • Auto-login: After startup, the app automatically logs in after 5 seconds, making the user experience faster and more efficient.
  • Dynamic Servers: The application owner can easily add or remove servers. The server configurations are automatically retrieved from an API.
  • Select Last Selected Server: The app remembers the last selected server, so it is automatically selected upon startup, speeding up the process for the user.
  • VPN Connection with OpenVPN or WireGuard: The application works with both OpenVPN or WireGuard configurations.
  • Discord RPC Support: The application integrates with Discord Rich Presence (RPC) and displays the VPN app as a "game" status in Discord. This allows sharing your current VPN activity with your Discord friends.

 

 

Technical Approach:

  • WPF & MVVM: By using WPF for the user interface and the MVVM design pattern for separated logic, the application remains well-structured and easily extendable.
  • API Integration: The dynamic server functionality uses an API that retrieves and manages server configurations, providing a flexible and easily customizable experience.
  • OpenVPN & WireGuard: The application supports both OpenVPN and WireGuard, two of the most popular VPN protocols, for a reliable and secure connection to the server.
  • Discord RPC: The integration with Discord RPC adds an extra layer of interaction, allowing users to share their VPN status with their friends.
 
 
With LoonaVPN, I have further strengthened my skills in networking, VPN technologies, and API integration. I have learned how to set up reliable connections via OpenVPN and WireGuard, and how to improve the user experience with dynamic server settings and Discord integration.
Back