# @opennetwork/environment

> Cross platform JavaScript environment

Latest version **1.23.0** (published 2021-12-21) · MIT license · 0 weekly downloads

## Install

```sh
npm install @opennetwork/environment
pnpm add @opennetwork/environment
yarn add @opennetwork/environment
bun add @opennetwork/environment
```

## Health

**Score 25/100 (F)** — status: abandoned.

Positive: has types; esm support; no vulnerabilities.

Warnings: low downloads.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.23.0 |
| Published | 2021-12-21 |
| First published | 2020-05-14 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Node | >=14.1.0 |
| Dependencies | 31 |
| Unpacked size | 2.8 MB |
| Known vulnerabilities | 0 (+4 in 4 direct dependencies) |
| Install scripts | no |
| Author | Fabian Cook |
| Maintainers | shipper, virtualstate-user |

## Links

- npm: https://www.npmjs.com/package/@opennetwork/environment
- npm.io page: https://npm.io/package/@opennetwork/environment

## Dependencies (31)

- [uuid](https://npm.io/package/uuid.md) ^8.3.2
- [jsdom](https://npm.io/package/jsdom.md) ^18.0.1
- [dom-lite](https://npm.io/package/dom-lite.md) ^20.2.0
- [iterable](https://npm.io/package/iterable.md) ^5.7.0
- [lit-html](https://npm.io/package/lit-html.md) ^1.2.1
- [@grpc/grpc-js](https://npm.io/package/@grpc/grpc-js.md) ^1.4.3
- [@edwardmx/noop](https://npm.io/package/@edwardmx/noop.md) ^1.0.1
- [@virtualstate/x](https://npm.io/package/@virtualstate/x.md) ^2.25.4
- [abort-controller](https://npm.io/package/abort-controller.md) ^3.0.0
- [dependency-graph](https://npm.io/package/dependency-graph.md) ^0.9.0
- [@types/aws-lambda](https://npm.io/package/@types/aws-lambda.md) ^8.10.85
- [@virtualstate/dom](https://npm.io/package/@virtualstate/dom.md) ^2.25.4
- [@opentelemetry/api](https://npm.io/package/@opentelemetry/api.md) ^1.0.3
- [@virtualstate/hooks](https://npm.io/package/@virtualstate/hooks.md) ^2.25.4
- [@virtualstate/union](https://npm.io/package/@virtualstate/union.md) ^2.25.4
- [@virtualstate/fringe](https://npm.io/package/@virtualstate/fringe.md) ^2.25.4
- [@opentelemetry/metrics](https://npm.io/package/@opentelemetry/metrics.md) ^0.24.0
- [@opentelemetry/tracing](https://npm.io/package/@opentelemetry/tracing.md) ^0.24.0
- [@virtualstate/examples](https://npm.io/package/@virtualstate/examples.md) ^2.25.4
- [@opentelemetry/sdk-node](https://npm.io/package/@opentelemetry/sdk-node.md) ^0.26.0
- [@opennetwork/environment](https://npm.io/package/@opennetwork/environment.md) ^1.20.1
- [@opennetwork/rdf-dataset](https://npm.io/package/@opennetwork/rdf-dataset.md) ^10.1.4
- [@opennetwork/rdf-data-model](https://npm.io/package/@opennetwork/rdf-data-model.md) ^5.3.1
- [@virtualstate/astro-renderer](https://npm.io/package/@virtualstate/astro-renderer.md) ^2.25.4
- [@virtualstate/hooks-extended](https://npm.io/package/@virtualstate/hooks-extended.md) ^2.25.4
- [@opentelemetry/exporter-jaeger](https://npm.io/package/@opentelemetry/exporter-jaeger.md) ^1.0.0
- [@opennetwork/http-representation](https://npm.io/package/@opennetwork/http-representation.md) ^3.0.0
- [@opentelemetry/exporter-prometheus](https://npm.io/package/@opentelemetry/exporter-prometheus.md) ^0.26.0
- [@opennetwork/http-representation-node](https://npm.io/package/@opennetwork/http-representation-node.md) ^3.0.0
- [@opentelemetry/exporter-collector-grpc](https://npm.io/package/@opentelemetry/exporter-collector-grpc.md) ^0.25.0
- [@opentelemetry/auto-instrumentations-node](https://npm.io/package/@opentelemetry/auto-instrumentations-node.md) ^0.26.0

## Recent versions

- 1.23.0 (latest) — 2021-12-21
- 1.22.0 — 2021-12-20
- 1.21.0 — 2021-12-20
- 1.20.1 — 2021-12-19
- 1.20.0 — 2021-12-19
- 1.19.0 — 2021-12-19
- 1.18.0 — 2021-09-29
- 1.17.0 — 2021-09-28
- 1.16.0 — 2021-09-28
- 1.15.0 — 2021-09-28
- 1.14.0 — 2021-09-28
- 1.13.0 — 2021-09-28
- 1.12.0 — 2021-09-28
- 1.11.0 — 2021-09-03
- 1.10.0 — 2021-09-03
- … 13 more at https://npm.io/package/@opennetwork/environment/versions

## README

# @opennetwork/environment

Cross platform JavaScript environment

[//]: # (badges)

![nycrc config on GitHub](https://img.shields.io/nycrc/virtualstate/x) ![41.56%25 lines covered](https://img.shields.io/badge/lines-41.56%25-yellow) ![41.56%25 statements covered](https://img.shields.io/badge/statements-41.56%25-yellow) ![53.1%25 functions covered](https://img.shields.io/badge/functions-53.1%25-yellow) ![70.6%25 branches covered](https://img.shields.io/badge/branches-70.6%25-yellow)

[//]: # (badges)

## Usage

```typescript
import {run, addEventListener, fetch} from "@opennetwork/environment"; 
import {Response} from "@opennetwork/http-representation";

addEventListener("install", async () => {
   console.log("Setup something!"); 
});

addEventListener("configure", async () => {
    console.log("Updated configuration for something!");
});

addEventListener("fetch", async (event) => {
    event.respondWith(new Response("Not Found", {
        status: 404
    }))
});

addEventListener("execute", async () => {
    const response = await fetch("/something");
    console.log("Response status: ", response.status);
    console.log("Done something!");
});

await run({
    /* config here */
})
```

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