Will the app loader and IDE get a UI update?

Posted on
  • Right now Espruino doesn't really have a consistent design language. I have miscellaneous complaints about the Bangle app loader and the IDE (mainly speed and reliability), but one main one is the design. The UI is scattered, with some things in different places. Does the team have any plans to update the UI? Would they mind if I made a PR that moved some stuff around and maybe changed the theming?

  • Do you have any examples of what you'd want to change?

    I honestly can't remember of the last time someone complained about the IDE's look (apart from Projects/some stuff under the hood). It's not amazing, but it's simple and works.

    I'm all for usability improvements, but I'd like to check first because I'm a little concerned that if you change a bunch of stuff, far more people may be inconvenienced by the change than will benefit.

    Does the team have any plans to update the UI?

    You mean me? I'm stretched a little thin at the moment, so not really. I'd like to allow multiple files in the IDE, but that's it really.

  • Right. Here's a bit of a weird layout somewhat inspired by VS Code, not sure how usable it is. It would have Espruino IDE and the help/settings buttons as part of the bottom bar, I couldn't add them in.


    1 Attachment

    • 20220921_152345.jpg
  • You can fork https://github.com/espruino/EspruinoWebI­DE on github and even run it as your own version via "yourname".github.io like https://espruino.github.io/EspruinoWebID­E/ so you can do what you want and let us see.

    But maybe first check issues here https://github.com/espruino/EspruinoWebI­DE/issues and maybe make one there and describe in detail your "miscellaneous complaints about <...> the IDE (mainly speed and reliability), but one main one is the design" . The picture you posted does not explain much.

    Personally I like the IDE as it is. Managing whole project = editing multiple files is the only thing I miss sometimes. Also not sure if it is already possible or is even doable but having the possiblility of the loader site to connect to webide emulator and install apps/widgets there like with real device could be nice too.

    BTW if you like VS Code maybe making vscode plugin would be better option than redesigning the IDE?

  • Right. I haven't done VS Code plugins before, but it sounds like I just need to run the CLI or something?

  • having the possiblility of the loader site to connect to webide emulator and install apps/widgets there like with real device could be nice too.

    This is very possible and would be a nice addition. The only downside is the app loader would have to load the emulator window itself, so you wouldn't get the IDE running at the same time.

    BTW if you like VS Code maybe making vscode plugin would be better option than redesigning the IDE?

    Yes! If your complaint is basically that the IDE isn't Visual Studio code, then just using VS Code seems like the best option for everyone.

    You can just use the CLI, but it can end up being a bit of a pain to get it working (Bluetooth LE support in Node.js is fine on Linux and Mac OS but is very painful to get working on Windows). If you were able to make a plugin for VS code that effectively launched the Web IDE (just as a terminal) in a separate window then we could use all the Web APIs (like Web Bluetooth) and it would 'just work'.

    ... that would be a massive benefit for loads of people, especially those already using VS Code

  • I'm trying to implement BLE in a VS Code extension with node-ble, but I'm getting this error upon trying to write data:
    Operation failed with ATT error: 0x82
    Does anyone have any idea what this means?

  • Afraid not - that sounds specific to node-ble so it might be worth asking on their GitHub.

    I should point out that just adding a BLE UART to VS Code is probably not ideal. The CLI at https://github.com/espruino/EspruinoTool­s does a bunch of extra transforms to the JS code before it is sent, so ideally you would use that (it's what the IDE uses internally) - it also has a node-ble implementation already (while it works, it seems to break every other platform so has been disabled: https://github.com/espruino/EspruinoTool­s/blob/master/core/serial_node_ble.js.br­oken)

  • while it works, it seems to break every other platform

    recently I tried noble-winrt https://github.com/Timeular/noble-winrt on windows 10 and basic stuff worked just fine so might be worth trying this one on windows

  • Thanks! That sounds really promising... I can't seem to find a way of getting the package.json file to say "use this module on Windows, this on Linux, etc" though which makes it a bit frustrating to include it... I don't suppose anyone's got any ideas?

  • FYI I'm looking for something that would mainly work on Linux, given that's where I usually develop stuff.

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview
About

Will the app loader and IDE get a UI update?

Posted by Avatar for KTibow @KTibow

Actions