It's the fact that the app is so slow to launch, consumes ridiculous amount of resources, does not take advantage of the hardware, is unstable etc. And then when you're using the app all of the interactions are slow because NodeJS's concurrency is so poor.
Rust and Tauri fixes all of those. It's not perfect but for a cross-platform app development library I've not seen anything better. Happy to be enlightened with alternatives.
You've just described almost any web-based UI ;)
> And then when you're using the app all of the interactions are slow because NodeJS's concurrency is so poor.
Most of the slow interactions come from the web-based UI. I mean, Slack needs 17% CPU to draw an animated emoji. And it's already running in a hyper optimised Chrome: https://twitter.com/dmitriid/status/1486364312910368769
> Happy to be enlightened with alternatives.
Qt :)
Unfortunately, it’s licensing is not suitable for everyone.
Unironically, FreePascal/Lazarus had a decent shot at this with LCL: https://en.m.wikipedia.org/wiki/Lazarus_Component_Library
It could target Win32, GTK and Qt all at compile time (even Android and OS X but that never got developed all that far AFAIK), depending what runs on your target platform, while you get common components and RAD at design time.
I haven't seen anything like it since and sadly the language and ecosystem are mostly dead, which is a shame, because the idea was brilliant and it actually worked (and is still used in some software, like CudaText and PeaZip I think).
Aside from that, something like MAUI could be worth a look: https://dotnet.microsoft.com/en-us/apps/maui
It uses system-provided WebView (WebKit on MacOS and Linux, and Edge on Windows) to display the UI shell, so the UI portion will be just as slow as any Electron app.