is-node-process
Reliably determines if the code is running in Node.js
Motivation
This library was created to provide a reliable way of determining a Node.js process, taking into account:
- Browser-like environments (JSDOM);
- Electron renderer process;
- React Native runtime.
Why relying on window
is a bad idea
There are environments (i.e. JSDOM) that polyfill the global window
object and some of its API for the sake of emulating browser-like behaviors, while still remaining a Node.js process.
Why relying on process
is a bad idea
Electron injects a global process
object in the browser runtime when run with the nodeIntegration: true
option.
Getting started
$ npm install is-node-process
$ yarn add is-node-process
const { isNodeProcess } = require('is-node-process')
isNodeProcess()