/node-red-nodegen

Primary LanguageJavaScriptApache License 2.0Apache-2.0

Node generator for Node-RED

Node generator is a command line tool to generate Node-RED nodes based on various sources such as an Open API document or a Function node. It helps developers dramatically reduce the time to implement Node-RED nodes.

Installation

Install node generator globally to make the node-red-nodegen command available on your path:

npm install -g node-red-nodegen

You may need to run this with sudo, or from within an Administrator command shell.

Usage

Usage:
   node-red-nodegen <source file or URL> [-o <path to save>] [--prefix <prefix string>] [--name <node name>] [--module <module name>] [--version <version number>] [--tgz] [--help]

Description:
   Node generator for Node-RED

Supported source:
   - Open API document
   - Function node (js file in library, "~/.node-red/lib/function/")

Options:
   -o : Destination path to save generated node (default: current directory)
   --prefix : Prefix of npm module (default: "node-red-contrib-")
   --name : Node name (default: name defined in source)
   --module : Module name (default: "node-red-contrib-<node name>")
   --version : Node version (format: "number.number.number" like "4.5.1")
   --keywords : Additional keywords (format: comma separated string, default: "node-red-nodegen")
   --category : Node category (default: "function")
   --icon : PNG file for node appearance (image size should be 10x20)
   --color : Color for node appearance (format: color hexadecimal numbers like "A6BBCF")
   --tgz : Save node as tgz file
   --help : Show help
   -v : Show node generator version

Example 1. Create an original node from Open API document

-> You can use swagger-petstore node on Node-RED flow editor.

Example 2. Create an original node from function node (JavaScript code)

  • On Node-RED flow editor, save function node to library with file name (lower-case.js).
  • node-red-nodegen ~/.node-red/lib/function/lower-case.js
  • cd node-red-contrib-lower-case
  • sudo npm link
  • cd ~/.node-red
  • npm link node-red-contrib-lower-case
  • node-red

-> You can use lower-case node on Node-RED flow editor.

Documentation

Note: Currently node generator supports GET and POST methods using JSON format without authentication.