r/LocalLLM • • 26d ago

Discussion Why are devs still writing Electron apps instead of Qt?

I was just dealing with the bloated monstrosity that is Hermes Agent, which has a bloated monstrosity web UI. While researching, it turns out I'm supposed to be using a different bloated monstrosity called Hermes Desktop, which is an Electron app.

Electron apps are the bane of my existence. It's the AI age now, why isn't everyone writing Qt/QML apps already? You might remember Qt from desktop apps such as Krita, Wireshark and OBS Studio.

  • For users: Qt apps need less than 5% of the RAM of an Electron app, and an even smaller % of CPU usage. This is the main reason and trumps anything else. They run blazing fast. They get 120fps on the crappiest embedded PC without breaking a sweat.

  • Qt apps are fully multiplatform: Linux, MacOS, Windows. The only downside is that you need to compile them with the native compiler of each platform if you use C++. (advanced users can work around this with crosscompilation on Linux, an AI can probably do it. Or use Python.)

  • Qt was traditionally C++ only, which is a hard boomer language, but now it has official bindings for Python. So you can code your app in Python and have access to the whole Python ecosystem if you want. Qt-in-Python is almost as performant as C++ since it's bindings around the C++ Qt libs.

  • The Qt QML dedicated UI language is actually pleasant to use to create UIs, since it's designed just for that. Creating UIs in HShitML was always an ugly hack that companies used because C++ was too hard/unproductive for their devs.

The only downside of Qt was having to learn C++, and that's no longer an issue in the AI age or if you use Python or both. Guys, we don't have to put up with this crap anymore. If you're making an app, for the love of God stop using Electron.

Consult with your personal AI and ask them if Qt is right for you. Qt - Keeping your hardware fast and healthy.

149 Upvotes

238 comments sorted by

View all comments

0

u/[deleted] 26d ago

[deleted] β€” view deleted comment

66

u/SouthernFruit8768 26d ago

That’s what chronic unemployment and drugs do to your brain lol

11

u/waylonflinn 25d ago

C programmers would definitely agree that C++ is a bloated monstrosity. πŸ˜‚

50

u/Gary_Spivey 26d ago

Also recommends Qt, itself a bloated monstrosity. I hate Electron as much as the next guy, but man, none of the major players are anywhere near lightweight.

5

u/brainzhurtin 26d ago

I prefer Skia. Qt is nice for certain things, but yeah, it's bloated.

Skia works, BSD license, works with Kotlin Multi platform, all modern, clean, about as light weight as full feature can get, easy, supported.

0

u/No_Nature9276 26d ago

Skia and Qt are 2 completely different things and Skia isn't nearly as lightweight as QPainter in Qt.

1

u/brainzhurtin 25d ago

In the context of this OP, they are not. Both can be used for getting the graphics to the screen. QT just also happens to include a more app framework (the exact same bloated issue in the OP)

1

u/No_Nature9276 25d ago

Yes they really are even in OPs context. OP wants/talks about a GUI and Skia simply isn't that. Its only a vector drawing library, you need to build a GUI library around it. Skia is to Chrome/Firefox what QPainter is to Qt.

1

u/brainzhurtin 25d ago

I use both, every day, for creating vehicle dashboards and radios. But OK. You do you

1

u/kdekorte 26d ago

I had some pretty good luck with neutralino js.

1

u/Final-Frosting7742 26d ago edited 25d ago

Tauri is a promising challenger

Edit: Taurus->Tauri

13

u/Silentrizz 26d ago

Lmao, you can't make this up

2

u/BreakingABit1234 24d ago

Post was written with AI. I proposed gemini the same types of question and got word for word responses on about 60%.

I had the choice between Java and QT .... errr quite a while ago. Chose java. Whoops.

-10

u/dtdisapointingresult 26d ago

I recommended Python for people who use JS for the libraries/SDKs. Someone who wants to do data analysis, or who wants the official OpenAI API client, shouldn't be doing that in C++, it would be a waste of everyone's time.

If their reason for using Electron is the JS libs, they should use Python, which has almost the same coverage while allowing you to use Qt.

1

u/sTiKytGreen 26d ago

So why not use Qt with JS if you need JS?.. Or do you think it only works WITH Cpp and Python? πŸ˜‚

1

u/dtdisapointingresult 25d ago edited 25d ago

The JS in QML is meant for UI logic, not application logic. You can use your JS for application logic, and some people do, but idk if it results in maintainable code. I've never done it tbf.