I’ve been tinkering with a new AsyncAPI plugin for Node-RED as a side project over the last couple of weeks. Time to share what I’ve got working so far.
Node-RED is an open-source visual programming tool. You assemble flows on a canvas from a palette of nodes, that you customize and then wire together. That makes it ideal for quick prototyping.
There are nodes for different types of servers and devices, which makes it great for quick integration projects. This includes nodes for sending and receiving messages using protocols like Kafka and MQTT.
Normally, this means having to choosing a node from the palette, dragging it onto the canvas, clicking into it, and customizing it: filling in the connection details for the broker and topic you want to use.
The idea of this plugin is to do all of that for you, if you have an AsyncAPI specification for your topics.
The plugin can generate and customize the nodes for you, based on your spec – making rapid prototyping based on the spec even quicker.
demo video at youtu.be/3B4O10V2PA0
There is still loads of work to do on it, so it’s by no means finished. But Node-RED support for plugins is still in beta, so I have a little time to work on the worst rough edges!
Finally, huge thanks to Nick for helping me get started with this and putting up with my endless stupid questions. 🙂
If you’d like to give it a try, you can find it on GitHub. Feedback is very welcome. Fixes and improvements are even more welcome!