Home > Engineering > Bare Runtime
Reference for the Holepunch Bare runtime — the JavaScript runtime used by Splectrum for prototyping and targeted for production deployment.
Bare is a small, modular JavaScript runtime for desktop and mobile. Like Node.js, it provides an asynchronous, event-driven architecture built on libuv. Unlike Node.js, it ships with no standard library — everything is a userland module installed via npm. This makes it minimal by design: what you compose in is what exists.
This aligns directly with the architecture of absence: capabilities are present because they were composed in, not because they came bundled.
Source: https://github.com/holepunchto/bare
npm i -g bare
Prebuilt binaries included for Tier 1 platforms.
Bare is built on two dependencies:
The runtime itself provides only three things:
Everything else — filesystem, networking, crypto, streams — is a separately installed npm module.
| Aspect | Node.js | Bare |
|---|---|---|
| Standard library | Built-in | None. All userland. |
process global |
Always available | Not present. Require explicitly. |
Buffer global |
Always available | Not present. Require explicitly. |
| Module system | CJS or ESM (one-way) | CJS and ESM (bidirectional) |
| Mobile support | Not a goal | Core goal. Android/iOS Tier 1. |
| Embedding | Difficult | Core goal. Clean C API. |
| Streams | Node.js streams | streamx-based |
bare [flags] [filename] [...args]
| Flag | Description |
|---|---|
--version, -v |
Print version |
--eval, -e <script> |
Evaluate inline |
--print, -p <script> |
Eval and print |
--inspect |
V8 inspector |
--expose-gc |
GC APIs |
No script — starts REPL.
Module npm versions verified April 2026.
© 2026 In Wonder - The World of Splectrum, Jules ten Bos. The conversation lives at In Wonder - The Conversation.