// the find
wailsapp/wails
Create beautiful applications using Go
Wails lets Go developers build desktop apps with a web frontend — think Electron but your backend is Go instead of Node. You write Go methods, expose them as bindings, and call them from React/Svelte/Vue. The output is a single binary that uses the OS's native webview rather than shipping a bundled Chromium.
No embedded browser means binaries are 5-10MB instead of 150MB+, which is the main reason people reach for this over Electron. Auto-generated TypeScript definitions for Go structs and methods is genuinely useful — you get type safety across the Go/JS boundary without writing glue code by hand. v2 is stable and has been production-used for years; the showcase has real apps (Redis viewers, file managers, wallet tools). The CLI handles the full dev/build/bundle workflow including cross-compilation.
v3 has been in alpha for a long time with no clear timeline to stable — if you start on v2, you're eventually facing a migration with breaking API changes. Linux support works but is a second-class citizen: GTK WebView has rendering quirks and feature gaps compared to macOS/Windows. The Go-to-JS binding model works well for simple calls but gets awkward for streaming data or complex async patterns — you end up building a lot of event plumbing. No iOS/Android story despite an IOS_ARCHITECTURE.md file in the repo, so this is desktop-only.