Hi all, I've released a new version of uibuilder, an alternative to Dashboard for where you find the complexities of trying to wrangle Angular too much to deal with.
Many thanks to Colin Law for helping find and fix a bunch of bugs.
Dashboard is much better than uibuilder for getting going quickly and for beginners. You can build amazing things with it. However, sometimes it starts to get in the way or is too heavyweight.
In those kinds of cases, you might find uibuilder a useful alternative. It does require more knowledge of JavaScript however as it only provides the bare minimum of a framework. It is designed to take away much of the donkey work and boilerplate in setting up web apps with dynamic messaging between Node-RED and the front-end (browser) client.
Key highlights:
- Allows easy loading of front-end libraries so you can easily work with any of them. RiotJS, VueJS, REACT, Angular or maybe just a layout framework like Tachyon.IO. JQuery is already provided and that might well be enough for many uses. All you need to do is install the appropriate Node.JS package using npm and add the package name to the settings.js file.
- Provides a websocket connection between the node in Node-RED and the browser. Makes it easy to pass messages back and forth. Uses the same messages you work with in Node-RED. Falls back to alternative channels if websockets is blocked for some reason.
- Allows you to create as many web apps as you like (Dashboard can only create one), just specify unique URL's.
Please note that this node has not been hardened and I would anticipate some security issues, mainly in websockets, if trying to use over the Internet.
As always, I am more than happy for feedback. Issues and suggestions can be raised on GitHub and I welcome pull requests too.