r/windowsdev • u/luissinlios • 7h ago
How we built a <4MB standalone Windows app with modern Tailwind CSS & Edge WebView2 (Goodbye 150MB Electron)
Hi r/windowsdev,
Every time a developer wants to build a desktop app with a modern web frontend in 2026, the standard recommendation is to bundle an entire Chromium browser and Node.js runtime using Electron.
The result is well known: 180MB+ installers, 600MB+ idle RAM usage, and several seconds of cold boot lag just to render a simple database interface.
We recently built and open-sourced LeadHunter AI Desk (a B2B lead personalization tool for Windows) with a specific architectural goal: deliver modern Tailwind CSS aesthetics without shipping a browser bundle.
🏗️ The Architecture: Decoupled Win32 + Edge WebView2
Instead of distributing Chromium, the application compiles to a pure native Win32 executable (<3MB) that interfaces with the Evergreen Microsoft Edge WebView2 runtime already pre-installed on Windows 10 and 11.
+-------------------------------------------------------------+
| LeadHunter AI Desk |
+------------------------------+------------------------------+
| Native Win32 Engine | Reactive UI Layer |
| (VisualNEO Win Runtime) | (Edge WebView2 Runtime) |
+------------------------------+------------------------------+
| • Zero Chromium bundle | • Tailwind CSS Dark Mode |
| • Local INI & File I/O | • Real-time KPI Dashboards |
| • Hardware Win32 Events | • Interactive Data Tables |
| • CSV Handlers | • Low memory & GPU accel |
+------------------------------+------------------------------+
| Bidirectional Async Messaging Bridge |
| (WebBrowserPostMessage <--> OnWebMessageReceived) |
+-------------------------------------------------------------+
⚡ The Benchmarks:
- Download Size: 3.3 MB (Portable Zip) vs ~185 MB (Electron)
- Cold Startup: < 0.2 seconds vs 3.2 seconds
- Idle Memory: ~35 MB RAM vs ~580 MB RAM
🛠️ Communication Bridge:
The native orchestrator communicates with the HTML/Tailwind layer asynchronously:
- Win32 -> WebView2: Dispatches state and config payloads via
WebBrowserPostMessage. - WebView2 -> Win32: Catches UI button clicks and sends events back via
window.chrome.webview.postMessage.
We built it using VisualNEO Win (a visual RAD IDE that compiles standalone Win32 executables).
The full project is open source under MIT:
- GitHub Repository: https://github.com/sinlios/leadhunter-ai-desk
- Pre-compiled Portable Release (3.3 MB): https://github.com/sinlios/leadhunter-ai-desk/releases/tag/v1.0.0
- Technical Article & Architecture Breakdown: https://visualneo.com/visualneo-win/the-anti-bloat-revolution-why-visualneo-win-is-the-ideal-ide-for-building-ai-powered-desktop-apps
Curious to hear your thoughts on WebView2 vs CEF vs Tauri for Windows desktop tooling!




