Finish SwiftUI OpenVPN Client

Заказчик: AI | Опубликовано: 18.01.2026
Бюджет: 250 $

I already have a clean SwiftUI front-end for an OpenVPN app; the missing piece is the actual tunnel. Your role is to complete the Packet Tunnel Provider, wire it into the UI, and make the connection lifecycle rock-solid. What needs to happen • Build or finish the PacketTunnelProvider target, using the official OpenVPN library, so the app can connect, disconnect, and reconnect in the background without drops or hangs. • Surface real-time session stats (data in/out, duration, live throughput) to the SwiftUI views I’ve prepared. • Resolve the current issues with automatic reconnect after sleep/airplane-mode and cleanly handle edge-cases such as failed handshakes or revoked certificates. • Test everything on a physical iPhone; the simulator won’t cut it because Network Extension entitlements only work on device. Tech stack & must-haves Swift 5.x, SwiftUI, Network Extension framework (Packet Tunnel Provider), Keychain access for credentials, familiarity with signing and provisioning profiles that include the “com.apple.developer.networking.networkextension” entitlement. Prior experience shipping a VPN or similar network-extension app is essential. Acceptance criteria • One tap connect/disconnect works consistently across fresh installs and repeated launches. • After an intentional drop (e.g., toggling Wi-Fi), the tunnel auto-reconnects within a reasonable timeout. • Stats values update in near real-time and reset correctly on disconnect. • The build runs on the latest public iOS version without crashes, code signing errors, or App Transport Security warnings. I’ll give you the existing Xcode workspace, design specs for the stats view, and a test .ovpn profile. Push back a compiling project and a short README explaining any new entitlements or build steps. If you know your way around Network Extension, this should be a focused, satisfying gig—let’s get it shipped.