Node (WebAssembly)
macOS · Linux · Windows · Containers · iOS and iPadOS · Android · ChromeOS · Browser · Node (WebAssembly)
@potluckdb/potluckdb-node-wasm contains the WebAssembly runtime for Node. It exposes the Runtime Interface, the low-level surface beneath every SDK. It has no application API. A caller obtains the module from createRuntimeInterface() and drives it as a language binding does.
Node applications use @potluckdb/potluckdb, which loads the native runtime.
Requirements
Section titled “Requirements”Node 20 or newer on any platform where Node runs. No native build is required.
What ships
Section titled “What ships”| Language | Package | Analytics package |
|---|---|---|
| JavaScript | @potluckdb/potluckdb-node-wasm | @potluckdb/potluckdb-node-wasm-analytics |
| Target | Artifact families |
|---|---|
node-wasm32 | node-wasm, npm-node |
Install
Section titled “Install”- Install the package with this command.
npm install @potluckdb/potluckdb-node-wasm- Save the code in a file with the
.mjsextension.
import createRuntimeInterface from "@potluckdb/potluckdb-node-wasm";
const runtime = await createRuntimeInterface();The package exists for two callers: a binding author, and a deployment that cannot load a native addon and accepts the Runtime Interface in exchange.
Quickstart
Section titled “Quickstart”No quickstart exists for this package. The Node quickstart is written against the application API, which this package does not carry.
Analytics
Section titled “Analytics”Analytical reads through this module need an engine linked in at build time. @potluckdb/potluckdb-node-wasm-analytics is that module. Install and import it in place of the default package.
Verified by the release
Section titled “Verified by the release”Each release candidate builds every target in the table and passes every required check of the release matrix before promotion. The packages that this page names are the packages that the release tested.
Each release installs both packages into one project. It verifies that the default module refuses analytical reads and the analytics module answers them.