Which IDE and/or tools are you using for creating / maintaining Node-RED nodes?

#1

Hi,

For the people maintaining and creating Node-RED nodes:
which IDE (Integrated development environment) and/or tools are you using for doing this ?

It would love to hear more about this.
Jan.

#2

Microsoft VSCode. It is, like Node-RED, built using Node.js and is ideal for developing nodes.

I use Vivaldi as a browser (Chromium based) and make extensive use of the developer tools.

Git and GitHub of course to manage source code.

As I develop on Windows, I use Kitty for SSH (an enhanced version of PuTTY) and WinSCP for file transfers and direct edits on server files.

I make full use of npm's capabilities for running scripts - especially it's ability to have a cross-platform Node.js "bin" scripts that run on Windows, Mac, Linux.

I now have a custom script that lets me develop a node's html file in its 3 constituent parts (JavaScript, admin panel html and help html) and automatically reconstitutes them into the full file. It includes a simple watcher.

3 Likes
#3

I am using VSCode. The workspace contains the following:

  • a Node-RED git working copy
  • my nodes
  • a runtime directory for NR
  • a launch task for Node-RED which starts NR with the runtime dir in the workspace

My custom nodes are linked via npm link in the runtime directory. This way you can use the debugger integrated into VSCode.

The whole workspace is under git version control. My own nodes are in separate repos and added as git submodules.

1 Like
#4

@kuema @TotallyInformation thanks a lot for your responses.

I don't dare to claim otherwise, while you both are pointing your arrow at my head in the footer of the top post :grinning:

A colleague of mine is also proposing Microsoft VSCode - that makes three in row. So I will give that a shot.

#5

You're welcome!

I have tried many IDEs and enhanced text editors over the years. I have used Eclipse and Netbeans mainly for larger Java projects before, and wasn't satisfied with the tooling they provided for NodeJS, Typescript and web development. In my opinion VSCode suits this task very well!

I now use it a lot at work in a Windows environment, and at home under Linux for my private projects.

EDIT: When I find the time, I plan to create a template workspace with the structure I mentioned in my post and publish it on Github.

1 Like
#6

I should have also said that I "install" my developing nodes using npm install /path/to/source/code which means that all I have to do is to restart Node-RED in order to get the latest update (and reload the browser tab containing the admin ui if I've changed the admin panel).

PM2 or NodeMon is useful to easily restart Node-RED.

If you need to get into the weeds debugging Node-RED code, you can do that direct from VScode though I've started simply using the --inspect argument when starting Node-RED since Vivaldi recognises that you are using it and presents a developer ui window that includes the stdout, etc so you can see the log output as well has do the usual debugging tasks.