Node-RED comes with a core set of useful nodes, but there are many more available from both the Node-RED project as well as the wider community.
You can search for available nodes in the Node-RED library.
You can install nodes directly within the editor by selecting the
option from the main menu to open the Palette Manager.
The ‘Nodes’ tab lists all of the modules you have installed. It shows which you are using and whether updates are available for any of them.
The ‘Install’ tab lets you search the catalogue of available node modules and install them.
To install a node module from the command-line, you can use the following command
from within your user data directory (by default,
npm install <npm-package-name>
You will then need to restart Node-RED for it to pick-up the new nodes.
When first started, or a new project created, Node-RED will create an initial
package.json file in your user directory, or project directory. This allows you to manage your additional dependencies, and release versions of your project, using standard npm practices. The initial version is 0.0.1 but should be edited according to your project release requirements.
npm will automatically add additional installed modules to the dependencies section of the
package.json file in your user directory.
The easiest way to check for node updates is to open the Palette Manager in the editor. You can then apply those updates as needed.
You can also check for updates from the command-line using
npm. In your user
~/.node-red run the command:
That will highlight any modules that have updates available. To install the latest version of any module, run the command:
npm install <name-of-module>@latest
Whichever approach you take, you will need to restart Node-RED to load the updates.
--unsafe-permoption is that when node-gyp tries to recompile any native libraries it tries to do so as a "nobody" user and then fails to get access to certain directories. This causes the nodes in question (for example, serialport) not to be installed. Allowing it root access during install allows the nodes to be installed correctly during the upgrade.