/node-red-contrib-function-npm

Node red function node with capability to install packages from npm

Primary LanguageJavaScriptApache License 2.0Apache-2.0

node-red-contrib-function-npm

Node red function node with capability to install and use packages from npm

Install

From your node-red directory

npm install node-red-contrib-function-npm

Usage

The function-npm node behaves like a normal function node, with the exception of allowing the use of npm modules within the script inside the block. It scans the script for any require statements and downloads the modules specified in the require statements. The module is automatically cleaned from the disk when the node-red process closes.

//syntax to install a specific version
var lowerCase = require('lower-case@1.1.3')

//if no version specified the latest version is installed
var upperCase = require('upper-case');

msg.payload = {             
    upper: upperCase('Hello World'),
    lower: lowerCase('Hello World')
} ;
return msg;

Project Info

URLs

Name Link
Github Repo https://github.com/ntsaini/node-red-contrib-function-npm
NPM Package https://www.npmjs.com/package/node-red-contrib-function-npm

Contributions

If you'd like to contribute to this project, feel invited to commit to this repository!

License

This work is licensed under the Apache License, Version 2.0.

Credits

Project : node-red-contrib-npm (https://github.com/jthomas/node-red-contrib-npm)
License : MIT License
Author  : James Thomas

For providing the inspiration of the idea and code for installing npm packages dynamically
Project : node-red (https://github.com/node-red/node-red/blob/master/nodes/core/core/80-function.js)
License : Apache License 2.0
Author  : Node-RED team

For the base function node code.

Project : parse-package-name (https://github.com/egoist/parse-package-name)
License : MIT License
Author  : Egoist

For package name parsing regex