← Package directory
Available on winget

Install Nub

The all-in-one JavaScript toolkit that augments Node.js instead of trying to replace it.

Install with winget
winget install --id Nub.Nub
Upgrade
winget upgrade --id Nub.Nub
Uninstall
winget uninstall --id Nub.Nub

About Nub

An all-in-one toolkit for Node.js. One Rust binary to run your files and scripts, install dependencies, and manage Node itself — a Bun-like modern DX on top of the node you already have. There's no new runtime to adopt and no lock-in: every augmentation rides on Node's own public extension surfaces.

What's new in 0.4.7

A fix for dependencies whose install scripts replace a JavaScript launcher with a native binary — most visibly esbuild. Native-executable bins A package's bin can start as a JavaScript launcher and be swapped for a platform-native executable by its install script — esbuild does exactly this. nub linked the node_modules/.bin entry before the install script ran, so the shim invoked the binary as node <binary> and failed with a syntax error (nubx esbuild, ./node_modules/.bin/esbuild, and any script calling esbuild). nub now detects native executables (ELF, Mach-O, PE) and runs them directly — a symlink on Unix, a direct-exec wrapper on Windows — instead of wrapping them in node. Bin shims are also regenerated after dependency install scripts run, so a launcher that turns native mid-install gets the correct shim, including on the side-effects-cache restore path. (#412, fixes #394) What's Changed - fix(linker): exec native-executable bins directly instead of wrapping in node by @colinhacks in #412

Read release notes

Version history

Version Updated Notes
0.4.7 A fix for dependencies whose install scripts replace a JavaScript launcher with a native binary — most visibly esbuild. Native-executable bins A package's bin can start as a JavaScript launcher and be swapped for a platf...
0.1.0 Release notes