Node-RED: How to require Node.js native modules

This documentation is part of the Getting started guide. View the full guide here: How to get started with Node-RED.

👋 Welcome to the Stackhero documentation!

Stackhero offers a ready-to-use Node-RED cloud solution that provides a host of benefits, including:

  • MQTT server included (Mosquitto).
  • Full access to Node-RED admin UI.
  • Node-RED Dashboard included.
  • Unlimited and dedicated SMTP email server included.
  • Effortless updates with just a click.
  • Customizable domain name secured with HTTPS (for example, https://node-red.your-company.com).
  • Optimal performance and robust security powered by a private and dedicated VM.

Save time and simplify your life: it only takes 5 minutes to try Stackhero's Node-RED cloud hosting solution!

In Node-RED functions, trying to require a Node.js native module directly results in the error ReferenceError: require is not defined. This is because Node-RED does not allow you to require a Node.js module directly inside a function.

To resolve this, these modules have been integrated into the Node-RED global context. You can access them using context.global.

For example, if you need the crypto module, declare it like this:

const { crypto } = context.global;

The following Node.js modules are available: util, buffer, child_process, crypto, fs, os, http, http2, https, and zlib.