The more I dig into Node-Red the more I end up coding my own routines – and the internal function has nice colour coding etc but eventually you start to get a little frustrated with the internal editor especially if you are used to using an IDE.
It just so happens that some enterprising chap has come up with a function node that allows you to use functions held in separate documents! It is called FILE FUNCTION. And so it was that I went looking for an IDE that would ease programming of the Node.JS code and hopefully other stuff as well. Code Lobster describes itself as “PHP Edition” but has plug-ins for various other languages including something that is new to me – AngularJS. So off I went for the free edition – you’ll find that here. http://www.codelobster.com/
I ended up with the pro edition but the differences are not as marked as you might think. I was impressed by the intelligent lookup – though when editing a .JS file a little bemused as to why SOME intellisense didn’t work – for example “msg.payload.” only offered “switch” whereas I was after .substring, however it was nice to be able to look at structures I’d created and have the facilities of a full IDE – something I miss a lot when editing in Node-Red editor itself (I’m not complaining – it’s free for heaven’s sake but one always wants more).
That of course is not what Codelobster is about … it’s a PHP editor and allows for full debugging and visual development. It did catch me out – when I wrote a simple one-liner PHP program and tried to “run” the program in the preview mode. That failed of course because at least by default, Codelobster assumes you have a working local webserver “http://localhost/whatever/php” which I don’t – but that will be rectified soon.
There is FTP support – which is just as well as I edit everything on my PC and then fire it off to the Raspberry Pi!
I could rant on for ages and no doubt will at some time – but for now if you are interested in playing with their free version (which needs a key but I understand that will soon disappear) it’s in the link above.