Node-RED: Manage projects

How to use "Projects" in 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.
  • Customisable 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!

"Projects" in Node-RED is a powerful feature that integrates Git-based version control directly into your workflow. By making use of this functionality, it becomes much simpler to manage and synchronise your flows with external Git repositories, which is particularly useful for team collaboration and for maintaining an organised development process.

To begin, log in to your Node-RED instance. Click the "hamburger" menu icon in the top-left corner, go to "Projects", and select "New".

Welcome screenWelcome screen

Before creating or cloning a project, you need to generate a public key. If prompted, choose the Not right now option. Next, open the menu (the "hamburger" button in the top-right corner), go to Settings, and then navigate to the Git config section.

In the "Committer Details" area, enter your Git username and email address. This information links your Git commits to your identity. For consistency, you may wish to set the username as Node-RED and use an email address such as nodered@<XXXXXX>.stackhero-network.com.

Git configuration panelGit configuration panel

When you are ready, click the Add key button, give your key a descriptive name, and then click Generate key. You can then use the Copy public key to clipboard option to copy the key before closing the panel.

To connect Node-RED to a remote repository, follow these steps (the example here uses GitHub, but the process is similar for other platforms):

  1. Add your public key in your chosen platform's settings.
  2. Retrieve the SSH URL for your Git repository.

You can either create a new repository or use an existing one. On GitHub, open your repository, go to Settings, then Deploy keys, and click Add deploy key. Paste in the public key you copied earlier, give it a clear name such as "Node-RED", tick the Allow write access box, and click Add key.

Add public key on GitHubAdd public key on GitHub

Return to your repository's Code tab and copy the SSH URL. This will generally look like [email protected]:<yourOrganization>/<yourRepositoryName>.git. If you are working with an existing repository, you will find this URL by clicking the Clone or download button.

Go back to Node-RED, open the menu (top-right hamburger icon), select Projects, and then click "New".

Choose Clone Repository and check your username and email settings. Paste the SSH URL of your repository into the Git repository URL field (for example, [email protected]:<yourOrganization>/<yourRepositoryName>.git) and click Clone Project.

If you are using a new repository, Node-RED may prompt you to create default project files. If so, select Create default project file.

Node-RED offers you the option to encrypt your flow credentials files before adding them to Git. It is strongly recommended to enable encryption to protect sensitive information. Be sure to keep the encryption key in a secure place. You will need it if you wish to decrypt your credentials later.

When everything is ready, click Create project files to finalise your project setup.

For further information, the official Node-RED documentation on Projects is a useful resource: Node-RED Projects Documentation.

You may also find this video tutorial helpful: Introduction to Node-RED Projects (YouTube).