Thank you so much! The visualisation makes it very clear to see where I stand. I love it.
It's funny to see how much has been developed after the "Build Tools" section in those past few years. Most of the technologies were in beta a few years ago.
In my experience, the amount of time it takes to "do it right" with electron completely negates the whole "its just simple web technologies you already know" selling point.
Yes VSCode has decent performance, but watch some of their tech talks about what they have to do in order to reach that level of performance - its insane. The amount of time, effort and increased complexity that is required to make an electron app get close to native performance makes it not at all worth it. And despite all those efforts, VSCode STILL isnt as fast as Sublime.
Electron is like a welder trying to build a house out of metal - sure he probably CAN make it work, eventually, but he really should have just learnt brick-laying and done it the proper way. Even though he managed to build a house without learning anything new, it would've been quicker and better if he had just sucked it up and learnt how to lay bricks rather than trying to build a house out using a far inferior material. (I'm sure there is a better analogy out there but you get my point).
A lot of software is vastly less complex than VScode so getting acceptable performance is less complex. What Microsoft does is typically an edge case...or an Edge case in Microsoft's case considering the switch to Chromium based web browser probably meant that level of work was going to happen anyway.
I mean, the unneeded bloat from electron isn't something I want. I don't like when my apps take up a lot of space on the system when it doesn't need to.
But thanks anyway. I've built a few apps using Electron before.
Because if it were the main priority, you would have no reservations using an inefficient but working solution like Electron, is probably what the parent means.
I want the app to cross platform but not at the expense of a Ram hungry app that I just throw out.
And yeah, i wouldn’t mind writing the logic in a language like rust or C and then invoking it from the native bindings If there’s no other solution out there for me to achieve performance over the so called “Let’s bundle the whole browser with every app” working solution.
You should check out Flutter then, it compiles to native machine code for mobile and desktop (Android, iOS, Windows, macOS, Linux are all supported with native compilation), and uses WASM for web. It's a much more performant solution than Electron. Only thing is the official Flutter desktop implementations are unstable for production, but there are unofficial implementations which are stable [0] [1]. You can use those until the official implementation is stable. You can also use Dart's FFI if you want but since it's compiled instead of interpreted like JS and Electron, you probably don't need to, the performance will be there.
You also said you don't like the layout system, but there are packages for that [2]. Let me know what else you would find annoying, there are usually packages for most things. There are even algebraic data types in Dart through code generation.