Node-RED: How to Require Node.js Native Modules
This documentation is part of the Getting Started guide. You can view the complete guide here: How to Get Started with Node-RED.
Welcome to the Stackhero documentation
Stackhero offers a fully managed Node-RED cloud environment designed to help you build workflows quickly:
- Integrated MQTT server (Mosquitto) for seamless IoT integration.
- Full access to the Node-RED admin interface for managing your flows and settings.
- Node-RED Dashboard included for real-time visualisation.
- Dedicated SMTP email server included, with no sending limits.
- Effortless one-click updates to keep your instance up to date.
- Custom domain names with automatic HTTPS: for example, https://node-red.your-company.com.
- High performance and enhanced security thanks to private, dedicated infrastructure.
You can have a secure, production-ready Node-RED cloud hosting instance running in around 5 minutes. Stackhero takes care of installation, updates, and infrastructure, so you can focus on building your automations.
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.