Development
FAQ 4: How do I see the Node-RED log?
Just as there are several possible ways to run Node-RED, there are several ways to access the log.
FAQ 3: What different ways are there to install Node-RED and which is best?
There are several possible ways to install Node-RED, this post provides an overview and some thoughts about when you might want to use which approach.
📖 Posts | 📎 Information Management, Data, Development, Software | 🔖 databases, dates, dba, debugging, development, software, solutions architecture, standards, timestamps
Rules for working with dates and times
Dates and times are incredibly complex. They can be different in different countries, languages. They are often inconsistent and have weird edge-cases. These are some basic rules I apply when working with dates and times.
FAQ 2: How can I run multiple instances of Node-RED on the same server device?
There are all sorts of reasons to want to run more than a single instance of Node-RED and several ways to do it.
A Glossary of Node-RED terms
For those not used to it, the terminology used in Node-RED can occasionally be confusing. Due in part to the overloading of some terms. So I’ve come up with this glossary to help keep myself from getting confused.
FAQ 1: Should I use a function node or a flow of core nodes?
There are usually many ways to achieve something in Node-RED. A common question is whether or when to use a function node or a collection of core nodes to achieve an outcome.
Using JSONata to transform msg data
JSONata is a syntax designed by IBM to help reformat and restructure JSON data in a similar vein to the way that XLST is used to transform XML data.
Creating a notification in the Admin UI
Node-RED’s admin UI has a built-in notification (toast) pop-up message feature. This article explains how to use it when creating custom nodes as it isn’t currently well documented.
Cleaning up npm package install problems
Node-RED uses npm to manage package installations such as its nodes. Sometimes, you can get into a situation where you start getting lots of npm installation or removal issues and it feels like you are going round in circles trying to fix things. If so, time to call it a day and to get drastic! Here, I try to explain an easy way to fix things quickly and completely without side effects.
Analysing the Performance of Node-RED
Node-RED is a powerful platform for prototyping and rapid development but it is complex. It has a lot of moving parts and it can be hard to know what might be causing performance bottlenecks. This article tries to give some hints and tips about analysing those bottlenecks and how to resolve them.
A more comfortable way to edit the code for creating custom nodes
Node-RED allows us to create custom nodes to extend the features. While this is a great feature, actually writing the code can be tricky. In part because the code for the admin configuration panel is contained in an html file containing 3 script entries that are Node-RED specific. This post shows you a relatively easy way to split that into 3 files and combine them with a build step using an npm cross-platform script.
How to take control of JavaScript console output
All browsers have the console object that lets you output to the developer console log. But in production, you don’t want this output, only in development. So here is the easiest way I’ve found to take control.
What JavaScript versions are there and how do they map to Node.JS versions?
There are now far too many versions of JavaScript. Worse, there are several ways to refer to a JavaScript version. Then we have Node.JS which has its own versioning. This post tries to summarise it all.
How to loop over JavaScript arrays and objects
JavaScript can be a pain at times. Loops are a fundamental part of all computer languages but in JavaScript, there are some oddities. This post is a summary of the different loop features and when to use them. It is likely to be updated from time-to-time as the standards are still changing.
Using npm configuration environment variables in package.json
npm automatically makes parts of your package.json file available as environment variables. This can be useful when using npm as a run script service.