# uvm

> Universal Virtual Machine for Node and Browser

Latest version **4.0.2** (published 2026-07-27) · Apache-2.0 license · 0 weekly downloads

## Install

```sh
npm install uvm
pnpm add uvm
yarn add uvm
bun add uvm
```

## Health

**Score 50/100 (C)** — status: active.

Positive: no vulnerabilities; high maintenance score.

Warnings: low downloads; no types; no esm support.

## Facts

| | |
|---|---|
| Version | 4.0.2 |
| Published | 2026-07-27 |
| First published | 2016-11-15 |
| Weekly downloads | 0 |
| License | Apache-2.0 |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >=18 |
| Dependencies | 1 |
| Unpacked size | 39.8 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 53 |
| Author | Postman Inc. |
| Maintainers | shamasis, kamalaknn, codenirvana, appurvamurawat, kdevakumaran |
| Keywords | vm, worker, contextify, postman |

## Links

- npm: https://www.npmjs.com/package/uvm
- Repository: https://github.com/postmanlabs/uvm
- Homepage: https://github.com/postmanlabs/uvm#readme
- Issues: https://github.com/postmanlabs/uvm/issues
- npm.io page: https://npm.io/package/uvm

## Dependencies (1)

- [flatted](https://npm.io/package/flatted.md) 3.4.3

## Alternatives

- [cron](https://npm.io/package/cron.md) — 4.9M weekly downloads
- [@vercel/queue](https://npm.io/package/@vercel/queue.md) — 731.6K weekly downloads
- [create-sonicjs](https://npm.io/package/create-sonicjs.md) — 1.6K weekly downloads
- [@exellix/jobs-api](https://npm.io/package/@exellix/jobs-api.md) — 941 weekly downloads
- [@forwardimpact/libskill](https://npm.io/package/@forwardimpact/libskill.md) — 575 weekly downloads

## Recent versions

- 4.0.2 (latest) — 2026-07-27
- 3.0.0-beta.1 (beta) — 2024-06-05
- 4.0.1 — 2025-06-12
- 4.0.0 — 2024-09-25
- 3.0.0 — 2024-06-11
- 2.1.1 — 2022-07-12
- 2.1.0 — 2022-07-11
- 2.0.2 — 2021-04-25
- 2.0.1 — 2020-10-05
- 2.0.0 — 2020-09-29
- 2.0.0-beta.1 — 2020-09-28
- 1.8.0-beta.1 — 2020-08-27
- 1.7.9 — 2020-07-13
- 1.7.8 — 2019-09-18
- 1.7.7 — 2019-08-14
- … 18 more at https://npm.io/package/uvm/versions

## README

# UVM [![CI](https://github.com/postmanlabs/uvm/actions/workflows/ci.yml/badge.svg?branch=develop)](https://github.com/postmanlabs/uvm/actions/workflows/ci.yml) [![codecov](https://codecov.io/gh/postmanlabs/uvm/branch/develop/graph/badge.svg)](https://codecov.io/gh/postmanlabs/uvm)

Module that exposes an event emitter to send data across contexts ([Worker threads](https://nodejs.org/api/worker_threads.html) in Node.js and [Web Workers](https://www.w3.org/TR/workers/) in browser).

## Installation
UVM can be installed using NPM or directly from the git repository within your NodeJS projects. If installing from NPM, the following command installs the module and saves in your `package.json`

```console
$ npm install uvm --save
```

## Usage

```javascript
let uvm = require('uvm'),
    context;

context = uvm.spawn({
    bootCode: `
        bridge.on('loopback', function (data) {
            bridge.dispatch('loopback', data + ' World!');
        });
    `
});

context.on('loopback', function (data) {
    console.log(data); // Hello World!
});

context.dispatch('loopback', 'Hello');
```

---
_Source: https://npm.io/package/uvm · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
