Nova Shield: Local Shield & DoH Resolver
A modern, cross-platform proxy server and personal firewall engineered with Flutter (Dart), Kotlin, and Windows/Linux System APIs. Features WinHTTP elevated process routing (for Internet Download Manager), Linux gsettings integration, and real-time per-app bandwidth tracking.
Nova Shield acts as a personal firewall, real-time HTTP/HTTPS tunnel (CONNECT method), and secure DNS resolver. By combining AI-assisted pair programming and scaffolding with deep systems engineering, it seamlessly bridges multi-threaded Dart isolates, high-speed Trie data structures, and OS-level traffic routing.
Live Application Interface Gallery
Swipe through Nova Shield's mobile interface, live firewall rules, bandwidth trackers, query logs, and custom theme builder. Click any screenshot to open in full focus!
Core Architecture & Capabilities
Engineered for zero-latency domain matching, robust encryption, and multi-threaded background processing.
⚡ Dart-Native ServerSocket Core
Customized TCP socket server handling concurrent HTTP and HTTPS tunneling (`CONNECT` request method) with connection lifecycle management and automatic fallback port binding (`8080` to ephemeral ports).
Heap Protection: Implements a strict `64 KB` header buffer cap to prevent memory exhaustion and buffer overflow attacks during request interception.
🛡️ Double-Trie O(L) Matching
Stores millions of hosts in memory using a custom Trie (prefix tree) data structure. Checking if a domain is blocked takes time proportional only to the hostname length (`O(L)`), completely independent of blocklist size.
Isolate Compilation: Compiling large filter lists (EasyList, StevenBlack) is offloaded to a background Dart Isolate (`Isolate.run`), keeping the UI locked at 60/120 FPS.
🔒 Secure DoH & DNS Cache
Bypasses ISP DNS hijacking and tracking by routing DNS requests over HTTPS with integrated presets for Cloudflare, Google, NextDNS, and AdGuard.
Local TTL Cache: Highly efficient DNS cache with expiration handling minimizes loading latency and allows custom DNS rewrites (spoofing).
🚥 Global Traffic Shaping
Integrates a global bandwidth speed limiter using a token-bucket rate limiter (`GlobalProxySpeedLimiter`) to precisely shape client traffic.
Network Simulation: Ideal for testing low-bandwidth network states (simulating 3G/2G connections) or throttling heavy background downloads.
🖥️ Windows System Integration
Automatically sets and cleans up Windows System Proxy registry configurations on startup and shutdown without leaving stale system states.
Tray Manager: Seamless System Tray integration (`tray_manager`) with minimize-on-close and a quick actions context menu.
📱 Android Kotlin VpnService
Employs a Kotlin-native `VpnService` to establish a local TUN interface that captures device-wide layer-3 traffic.
Bidirectional Channels: Forwards system-wide device traffic directly into the local proxy engine using `MethodChannel` events for real-time stats and logging.
Granular One-Click Shields & Filtering
🚫 Social Media & Tracking Shield
Instantly block telemetry, trackers, and distracting feeds from platforms like Facebook, X (Twitter), Instagram, TikTok, and Snapchat with a single toggle.
🔞 Adult, NSFW & Gambling Shields
Pre-configured categorical shields that instantly cut off access to adult websites, online gambling domains, and high-risk domains.
🪙 Crypto-Mining & Malicious Script Protection
Stops background browser cryptojacking scripts and known malware distribution servers before the first TCP handshake completes.
✨ Standard Filter Syntax & Inline Actions
Full compatibility with standard AdGuard and `hosts` file syntax, including whitelist exception overrides (`@@||domain^`). Users can block or whitelist domains instantly right from the live query log.
Neon Glassmorphic UI & Engineering Solutions
Neon Glass Dashboard
Curated Themes: Neon Cyber, AMOLED Black, Emerald Cyber, Sunset Amber & Nordic Frost
GPU Render Optimization
Applying heavy glassmorphic blur filters on a rapidly scrolling real-time query log (30+ requests/sec) can cause GPU rendering lag on mobile devices.
- RepaintBoundary Isolation: Wrapped logging components inside `RepaintBoundary` widgets to isolate blur shaders from scrolling lists, eliminating unnecessary GPU repaints.
- AMOLED Black Mode: A dedicated deep-contrast theme that completely disables backdrop filters for 0% GPU blur cost and maximum battery savings on OLED displays.
- Live Analytics Feed: Real-time network throughput graphs (upload/download bytes), active TCP connections counter, and searchable query logs.
Key Engineering Breakthroughs
UI Thread Freeze on Rule Compilation (100,000+ Rules)
The Problem: Loading EasyList and StevenBlack lists requires parsing over 100,000 text rules and building Trie tree nodes. Performing this on Dart's main isolate caused the UI to freeze for up to 3 seconds.
The Solution: Offloaded the entire I/O and parsing pipeline to a background isolate via `Isolate.run()`. The Trie trees are constructed in background memory and passed back to the main thread instantly.
Layer-3 TUN Packet vs. Layer-4 TCP Stream Routing (Android)
The Problem: Android's `VpnService` intercepts IP-layer packets (layer 3) while the proxy operates on TCP streams (layer 4).
The Solution: Routed DNS requests to the local proxy via custom DNS configurations within the VPN setup, and translated Android VPN traffic into HTTP/HTTPS calls forwarded to the Dart isolate proxy server via bidirectional `MethodChannel` events.
Ready to try Nova Shield?
Download the high-performance local proxy and network shield for Windows Desktop, Linux, and Android. Secure your DNS, block trackers, and take control of your traffic.
Download for Linux (.tar.gz)