This is an Electron template to embed Node-RED with an existing Node-RED project to create a native application.
 
 
Go to file
Dave Conway-Jones b164f0b777
major upgrade to latest electron and builder
still need to do readme and merge
2019-10-23 17:40:06 +01:00
.github Create no-response.yml 2019-10-13 22:43:01 +01:00
build major upgrade to latest electron and builder 2019-10-23 17:40:06 +01:00
.gitignore major upgrade to latest electron and builder 2019-10-23 17:40:06 +01:00
.travis.yml Slight tidy 2016-10-29 22:57:05 +01:00
LICENSE.md First commit 2016-03-09 16:49:41 -05:00
README.md Bump to 0.19.2 - add more options as examples 2018-08-25 22:31:44 +01:00
console.htm major upgrade to latest electron and builder 2019-10-23 17:40:06 +01:00
dockbuild major upgrade to latest electron and builder 2019-10-23 17:40:06 +01:00
electronflow.json major upgrade to latest electron and builder 2019-10-23 17:40:06 +01:00
electronflow_cred.json add loading page for slow devices 2018-08-27 14:45:40 +01:00
load.html add loading page for slow devices 2018-08-27 14:45:40 +01:00
loading.gif Better loading icon and demo flow 2016-10-30 23:03:12 +00:00
main.js major upgrade to latest electron and builder 2019-10-23 17:40:06 +01:00
makewin32.js Much cleaner builds all round 2016-10-31 22:07:52 +00:00
makewin64.js Much cleaner builds all round 2016-10-31 22:07:52 +00:00
nodered.png major upgrade to latest electron and builder 2019-10-23 17:40:06 +01:00
package.json major upgrade to latest electron and builder 2019-10-23 17:40:06 +01:00

README.md

electron-node-red

This is an Electron template to embed Node-RED with a Dashboard generated by node-red-dashboard.

This is not intended to be a useful tool as-is, but as a base for you to create your own versions. You will need to edit the main.js to suit your application and update the package.json file to include your own required dependencies.

At the top of main.js are a couple of flags you can switch to turn off editing, allow loading of a different flow file (and save as), and adding the worldmap to the menu. Again these are only there to show you possibilities. Have fun.

To Use

To clone and run this repository you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:

# Clone this repository
git clone https://github.com/dceejay/electron-node-red.git
# Go into the repository
cd electron-node-red
# Install dependencies and run the app
npm install && npm run clean && npm start

TL:DR - building runtimes

On OSX you can run ./buildall to build binaries of "everything"... maybe...

Run npm run pack to create packages for all platforms - these are the files required to run, they are not binary installers.

Builds are created in the build directory. Runtimes are created in the ../electron-bin directory.

Note: this was written to work on a Mac... other tools may/will be needed on other platforms.

Packaging your application

If you want to distribute executables of this project, the easiest way is to use electron-packager:

sudo npm install -g electron-packager

# build for OSX 64 bits
electron-packager . Node-RED --icon=nodered.icns --platform=darwin --arch=x64 --out=build --overwrite

# build for Windows 64 bits
electron-packager . Node-RED --icon=nodered.icns --platform=win32 --arch=x64  --out=build --asar=true --overwrite --win32metadata.CompanyName='IBM Corp.' --win32metadata.ProductName='Node-RED Electron'

# build for Linux 64 bits
electron-packager . Node-RED --icon=nodered.icns --platform=linux --arch=x64 --out=build --overwrite

Learn more about Electron and its API in the documentation.

To package as a dmg

npm run build:osx

look at https://github.com/LinusU/node-appdmg

sudo npm install -g appdmg

appdmg appdmg.json ~/Desktop/NodeRED.dmg

To package as a deb

npm run build:linux64 or npm run build:linux32 - for Intel Linux

Look at https://github.com/jordansissel/fpm

fpm -s dir -t deb -f -n node-red-electron -v 0.16.2 -m your-email@example.com -a i386 Node-RED-linux-ia32/
fpm -s dir -t deb -f -n node-red-electron -v 0.16.2 -m your-email@example.com -a x86_64 Node-RED-linux-x64/

Use sudo dpkg -i ...* to install the correct deb for your architecture.

Use Node-RED command to run. Flows are stored in ~/.node-red.

To package as an exe

npm run build:win32 - to build for 32-bit Windows.

npm run build:win64 - to build for 64-bit Windows.

Note: This project was built to run on Mac OSX - To build for windows on other platforms you may need to use other tools.

License CC0 (Public Domain)

See also