We're making it easier for you to see the contributed nodes ecosystem in real-time. Coming soon.

The State of Node-RED Contributed Nodes Ecosystem
.png?width=50&height=50&name=Pablo-Speaker%20(1).png)
PABLO ACOSTA, PH.D. | OCT 07 2022
Node-RED is a vibrant and highly active open-source community. Whether we're building enterprise-scale projects or prototypes for smart homes, we often search through the Palette Manager for nodes to help us build faster. Right before we hit that "install" button, is this node any good?
We decided to dive deeper into the contributed nodes ecosystem. Not only to present the current landscape to our ever-growing Node-RED community, but also to help us co-create a better ecosystem together.
LAY OF THE LAND | PACKAGE STATS
4039
TOTAL PACKAGES
350
SCOPED PACKAGES
3689
COMMUNITY PACKAGES
2402
AUTHORS
The main areas that nodes fall in are IoT, Cloud, and Home.
Node-RED node categories displayed as a keyword cloud.
Node-RED contributed nodes are used everywhere — from smart tech, to security, to communication, to automation
It's no surprise that many nodes contributed are related to IoT and smart home automation (e.g. hue, alexa, sarah, etc.). There is still a considerable portion of nodes being used for industrial, development, database and communications purposes.
HOW TO MEASURE NODE QUALITY
① There is an existing criteria to measure node quality — the scorecard.
Although this is relatively new feature, it is undeniable that a criteria now exists to help node authors and users evaluate nodes against basic community requirements. Currently only new submissions are given a scorecard, so out of the 4039 current contributed nodes in the Node-RED ecosystem, there are only 847 with scorecards. Out of those, only 8% have perfect scorecards.
There are 12 categories available to the community to bring credibility to their node. Most packages that use the scorecard have unique package names and are associated with the Node-RED keyword. It becomes more challenging for node authors to provide meaningful usage examples of their nodes, and establish minimum supported Node-RED and NodeJS versions.
This graph shows the categories completed for contributed nodes with scorecards.
An example taken from the download-file (node) to show what a perfect scorecard looks like.
HOW TO MEASURE NODE QUALITY
② Production-ready packages should be at least v.1.0
When we observe the distribution of version numbers across the current contributed nodes ecosystem, we may reach an unexpected conclusion. More than half of all contributed nodes have version numbers less than 1.0. This suggests that most packages are not ready for production yet.
Nonetheless, this is unlikely the case. Although this situation is common for open-source communities, having consistent versioning will benefit the community as a whole. It allows users to identify the development progress of these packages and helps users filter and select which packages are stable for download.
Using the Semantic Versioning guidelines authored by Tom Preston-Werner, cofounder of GitHub, can provide us a rule of thumb to releasing nodes with more accurate version numbers.
How do I know when to release v1.0.0?

Contributed node packages that have version numbers between >=1.0 and <2.0.
Contributed node packages that have version numbers between v2.0.0 and v3.0.0 (non-inclusive).
HOW TO MEASURE NODE QUALITY
③ Package popularity only shows part of the picture
There are 480K contributed node packages being downloaded worldwide every week. Yet, only a handful of packages account for 75% of the weekly downloads. The most popular weekly download is the node-red-dashboard. The vast majority of contributed node packages lie in the last quartile.
However, having a long tail for contributed node downloads is beneficial for an open-source community like Node-RED. This suggests our 2K authors are creating nodes that fit into a variety of niches, giving the community the flexibility they need when they are developing their own prototype or project.
Weekly downloads of the top 25%
The top 25% of downloads are from 13 packages.
42 packages make up the 2nd quartile.
180 packages make up the third quartile.
The vast majority of contributed nodes are in the last quartile.

HOW TO MEASURE NODE QUALITY
④ Take advantage of the existing rating feature
Another great way to measure node quality is to use the ratings feature. Over a third of the contributed nodes have been rated. Ratings not only help provide feedback to the author, but also helps other users identify which nodes are easy to use and helpful to their projects by seeing what other Node-RED users think about it.


1483
NODES RATED
3738
NUMBER OF RATINGS
HOW TO MEASURE NODE QUALITY
⑤ Check the most recent activity
Some nodes are constantly being updated while other ones have been stable for a long time. Here we also observed the number of pull requests (PRs) per week, and how long it takes for these issues to get resolved.
1560
HAVE GITHUB PRs
2144
HAVE GITHUB ISSUES

Node-RED Contributed Nodes Hall of Fame
After our deep dive into the contributed nodes ecosystem, we wanted to give a shoutout to the nodes really stands out as an example.

In Conclusion
A community effort to measure node quality together
As an open-source community, Node-RED is a hub for many resourceful professionals and hobbyists to share their knowledge and skillsets when it comes to low-code programming. It also also maintained tirelessly by those who want to co-create a better ecosystem together.
As an individual contributor and user of the community, there is much we can do to measure and maintain node quality together.
Hence, we suggest that as a community we consider:
Adding a scorecard check to validate if a node has a test bench
Creating a scorecard check to validate that the node examples do not crash Node-RED
Updating node versions to reflect the real usage, popularity and stability of the node
Rating nodes that work well (regardless of version number)