Modernization of VPN Application UI

Job ID: 37903043

Budget: $30 – $250 USD

I'm seeking a freelancer to enhance my VPN application for university research purposes. The application is a WPF C# Windows desktop application. Currently, the app features a single interface for setting parameters and displaying connected user data. I aim to overhaul the interface to resemble the one provided in the following link: [https://www.istockphoto.com/vector/hud-interface-futuristic-ui-screen-with-data-display-statistic-graphs-menu-and-gm1292897537-387539609](https://www.istockphoto.com/vector/hud-interface-futuristic-ui-screen-with-data-display-statistic-graphs-menu-and-gm1292897537-387539609).

I'll provide an image of the current interface along with the project files, including the designer.cs code.

Enhancements to be made:

1. Integrate a settings button to configure VPN settings such as port listening, allowed applications, and private/public IP. The settings button will either display a popup or open a new page for configuration, ensuring a clutter-free main interface.

2. When allowing public IP, integrate a dropdown menu featuring all countries' alpha-2 names along with their flags. Refer to the provided link for the IBAN alpha-2 codes. (Note that multiple countries can be selected at a time, and include a select option for easy selection of all countries.) Link: [https://www.iban.com/country-codes](https://www.iban.com/country-codes)

3. Enhance the current showcasing of logs and the table of connected user information. Additionally, introduce a series of lines displaying connected, disconnected, and blocked users over time. This series will update every 5 minutes, presenting data in a three-line graph format for a total of one hour (12 points to display). Note: The 5-minute update is not to be implemented by the freelancer.

4. Implement a counter, either as a gauge or numerical display, indicating the total upload and download data.

5. Add a display of current settings information on the main interface, presented as text.

6. Display VPN status, whether it's running or stopped.

7. VPN server forwards traffic to the primary server. If not reachable, it forwards to the secondary one. Keep in UI status of each server (reachable or unreachable) as green if yes, red if not. The VPN configuration will be set in settings popup, and availability has to be displayed on the main screen.

8. Use a custom popup for displaying warning and information messages coherent with the main screen and settings interfaces.

9. Display total current connection as a counter.

You have to provide UTestVPN Class and designer, VpnSettingsPopup Class and designer, CustomVpnPopup Class and designer.

The hired freelancer has creative freedom to present the requested data and information as long as it meets my requirements and needs.
Related categories: .NET Windows Desktop C# Programming C++ Programming WPF