Show HN: QuickBEAM – run JavaScript as supervised Erlang/OTP processes

JavaScript runtime for the BEAM — Web APIs backed by OTP, native DOM, and a built-in TypeScript toolchain. - elixir-volt/quickbeam
110 points by dannote 207 days ago github.com 16 comments
Summary not yet generated for this article.

Original Text

QuickBEAM is a JavaScript runtime embedded inside the Erlang/OTP VM.

If you’re building a full-stack app, JavaScript tends to leak in anyway — frontend, SSR, or third-party code.

QuickBEAM runs that JavaScript inside OTP supervision trees.

Each runtime is a process with a `Beam` global that can: - call Elixir code - send/receive messages - spawn and monitor processes - inspect runtime/system state

It also provides browser-style APIs backed by OTP/native primitives (fetch, WebSocket, Worker, BroadcastChannel, localStorage, native DOM, etc.).

This makes it usable for: - SSR - sandboxed user code - per-connection state - backend JS with direct OTP interop

Notable bits:

- JS runtimes are supervised and restartable - sandboxing with memory/reduction limits and API control - native DOM that Erlang can read directly (no string rendering step) - no JSON boundary between JS and Erlang - built-in TypeScript, npm support, and native addons

QuickBEAM is part of Elixir Volt — a full-stack frontend toolchain built on Erlang/OTP with no Node.js.

Still early, feedback welcome.

Comments (16 of ) ⌛

Loading more comments... ⌛
Scroll down to load more comments
No comments available.
Type to search HN and engineering blog articles
Press Escape to close  |  ↑↓ to navigate  |  Enter to open