
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
wasi-worker
Advanced tools
Run WASI code inside of a Node.js
Worker.
Note: WASI as a technology is still experimental. The WASI APIs in Node.js are also considered experimental and subject to change. For best results, use this module with the most recent version of Node.js.
The following example demonstrates how wasi-worker is used to create Node.js
Worker threads executing WASI nanoprocesses.
'use strict';
const { createWasiWorker } = require('wasi-worker');
// worker is a Worker instance from the Node.js worker_threads module.
const worker = createWasiWorker({
args: ['foo', '-bar', '--baz=value'],
env: { ...process.env },
preopens: { '/sandbox': '/tmp' },
timeout: 10000,
wasmFile: 'app.wasm'
});
worker.on('exit', (code) => {
console.log('wasi worker exited with code:', code);
});
This section describes the complete wasi-worker API.
createWasiWorker([options])options (object) - Optional configuration object supporting the
following schema:
args (array) - An array of strings that the WebAssembly application
will see as command line arguments. Optional. Defaults to [].env (object) - An object similar to process.env that the WebAssembly
application will see as its environment. Optional. Defaults to {}.preopens (object) - This object represents the WebAssembly
application's sandbox directory structure. The string keys of preopens
are treated as directories within the sandbox. The corresponding values in
preopens are the real paths to those directories on the host machine.
Optional. Defaults to {}.resourceLimits - (object) - An object representing the resource limits
imposed on the worker thread. This object is passed verbatim to the
Worker constructor. Optional. Defaults to {}.timeout (number) - The maximum number of milliseconds that the
WebAssembly may execute for. If the thread has not exited before the
timeout has elapsed, the thread is terminated. Optional. Defaults to no
timeout.wasmFile (string) - The path to the .wasm file to load and execute.Worker thread.Executes a WASI application inside a Node.js Worker thread. The returned
thread has exactly the same API as one created via Node's Worker constructor.
FAQs
Node.js worker for running WASI code
We found that wasi-worker demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.