JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 32164
  • Score
    100M100P100Q138156F
  • License MIT

Detect which JavaScript runtime is being used.

Package Exports

  • js-runtime
  • js-runtime/package.json

Readme

js-runtime

npm version npm downloads Coverage License

Detect which JavaScript runtime is being used, Bun, Deno or NodeJS.

Install

npm i js-runtime

Usage

index.js

import { get } from "js-runtime";

console.log(get()); //node or deno or bun
$ bun index.js
$ deno run index.js
$ node index.js

API

get

Return the current runtime.

Type: function
Returns: bun | deno | node

isBun

Type: function
Returns: boolean

isDeno

Type: function
Returns: boolean

isNode

Type: function
Returns: boolean

getVersion

Retrieve the version used in the current runtime.

Type: function
Returns: string

switcher

Switch based on the current runtime.

Type: function
Returns: T

index.js

import { switcher } from "js-runtime";

const message = switcher({
  bun: "Script is running with Bun",
  deno: "Script is running with Deno",
  node: "Script is running with Node",
})

console.log(message)
$ bun index.ts
script is running with Bun

importer

Dynamic import based on switch data, see switcher.

Type: function
Returns: T

index.js

import { importer } from "js-runtime";

const SQLite = await importer({
    bun: "bun:sqlite",
    deno: "https://deno.land/x/sqlite3@0.9.1/mod.ts",
    node: "better-sqlite3"
});

console.log(SQLite)
$ bun index.ts
bun:sqlite