finds.dev← search

// the find

nwjs/nw.js

★ 41,147 · JavaScript · MIT · updated Sep 2026

Call all Node.js modules directly from DOM/WebWorker and enable a new way of writing applications with all Web technologies.

NW.js (formerly node-webkit) is a Chromium + Node.js runtime for building desktop apps with HTML/CSS/JS, predating Electron by a couple of years. It's for developers who want full, unmediated Node access from the page context rather than Electron's main/renderer split with IPC.

Node and the page run in the same JS context/thread, so you call require() directly from the DOM with no IPC marshaling or contextBridge boilerplate. Full Node API and native npm module support, not a curated subset. Still shipping real releases after 15 years — v0.117.0 tracks Node 26.7 and Chromium 154, which is a serious maintenance commitment for a Chromium fork. Decent reference docs covering the native APIs (Window, Menu, Tray, Shell, Clipboard).

The same-context model that's the whole selling point is also the security liability: any page with Node access is a huge attack surface if you ever load remote or untrusted content, and it's easy to misconfigure compared to Electron's sandboxing-by-default. Building from source means dealing with a large Chromium patch set (webrtc_openssl.patch, vulkan-deps.patch, etc.) — this is a native C++ project wearing a JS README, and contributing at that layer is not for casual contributors. Ecosystem and community have shrunk hard relative to Electron — fewer boilerplates, fewer Stack Overflow answers, smaller plugin set. The binary verification instructions in the README still point at pool.sks-keyservers.net, an SKS keyserver network that's been dead for years, which suggests the docs aren't getting close scrutiny.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →