Natyv is a native desktop app runtime with no bundled browser engine. Your app logic runs as a WebAssembly module via Extism inside a native host, no Chromium, no DOM, no JS runtime required. Benchmarked against Electron building the same real app: 27MB disk and 58MB idle RAM for Natyv vs 244MB and 331MB for Electron. WASM's linear memory only grows, so Natyv's host also recycles guest instances automatically to keep long-running apps lean. v0.1.0 and early. Go SDK live on pkg.go.dev.
Hey Product Hunt! Maker here.
I got tired of watching Electron apps idle at 300MB+ of RAM just to sit
there doing nothing, and wanted to know if that was actually inherent to
"ship one UI across every OS," or just the cost of bundling an entire
browser to do it. So I built the same real app three ways and
benchmarked them honestly against each other.
The part I'm proudest of isn't even the size numbers, it's that the
first real idle-CPU measurement caught Natyv sustaining 70 to 93% CPU
doing nothing at all. That's not a number I would've found without
comparing against real alternatives instead of testing in isolation.
It's fixed now (0.0% idle CPU), and the fix is in the commit history,
not just a claim. I wrote up the full root-cause story here if you want
the details: https://dev.to/syke99/i-built-a-...
One honest note: I used Claude Code for a good chunk of the actual
implementation, but the architecture, the memory-reclamation approach,
and the SDK's own API design are mine. Wanted to be upfront about that.
It's v0.1.0, Go is the only guest SDK so far, and the widget set is
still small. Would genuinely love feedback, especially anything that
breaks or surprises you.