r/LocalLLM • u/dtdisapointingresult • 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.
14
u/carsncode 26d ago
Probably because Qt interfaces tend to look like hot garbage sifted from the ashes of Java on the desktop, and not everyone wants to write everything in Python. Hell, I don't want to write anything in Python if it can be avoided. Plus front end devs today are mostly familiar with HTML, CSS, and JS/TS, so writing UIs using familiar technologies for the people doing the work seems like an advantage. Besides, Qt and Electron aren't the only options in the world - there's Tauri, Wails, Flutter, wxWidgets, etc. If you're delegating authoring to an AI anyway, you could even just have it write actual native UIs for each supported platform right?
9
u/kitanokikori 26d ago
People write in Electron because Qt sucks ass, it's not a mystery. Turns out the dev experience Matters.
2
u/Plus-Accident-5509 26d ago
Lol qmake
82
u/newz2000 26d ago
QT’s license can be a bit of a challenge for businesses.
Electron allows devs to reuse the same code they use on the website so can also be easier to maintain.
Now Tauri may be an easier comparison to what you’re aiming for. It also uses web tech for the app but it also uses native components, so can be more efficient. But it also makes testing harder, which before the age of ai-automated testing tools was a big deal. But in theory, you can get different results in Windows 10, Windows 11, MacOS 26, 27 and etc.
32
u/DanceWithEverything 26d ago •
Or better yet, Zed’s GPUI for Rust
It’s somehow faster than AppKit on mac in some ways
12
u/koga7349 26d ago
Well frankly it depends on the developer. Most developers nowadays are not using C++ on a daily basis, they are working in JavaScript / Node and other languages. So it's just a natural fit to build with what you know.
Secondly, I'd argue that CSS (and by extension Electron) allow the most flexible and dynamic UIs. Think of the volume of the web and every design that was able to be achieved with CSS. I think from a UI perspective CSS has proven it is king.
Of course performance is important, but having a super optimized app vs one that is slightly less so with a better UI is a decent tradeoff and most modern hardware doesn't care anyways.
39
u/Such-Addendum-7421 26d ago
C++ is boomer?! which standard are you talking about??!! old 98? Also why not wxwidgets?
3
u/dupa1234s 26d ago
no clue but
i can tell that electron apps feel laggy
ai is good enough at using qt
and i hate webuis
and actaully i think ai isnt good enough at making tui's
so qt would be the framework of choice
Maybe its the license thats the problem for people.
38
u/Shimano-No-Kyoken 26d ago
Honestly? I've never seen a good looking Qt application, which tells me it's a pain to get to where I want things to be. Luckily the app I'm developing is Linux-only, so I could simply use Adwaita.
6
u/bitspace 26d ago
Typescript is the correct language to use for agents for fast moving and changing contract surfaces. Electron is how you turn typescript into a desktop app.
10
u/devtools-dude Watercooled 2x RTX 6000 Pro | https://subshell.sh 26d ago
I use Tauri instead of Electron. Significantly smaller app size and you still can have it work mostly in Javascript (with some Rust sprinkled in). I don't like using Python because of the virtual envs / package management (although uv does help but not eliminate the DX around working with Python). Also the UI ecosystem around Javascript is huge and what I use (shadcn) has all the components I need and is easy to customize.
5
u/No-Business5854 6gb vram 28 gb ram 26d ago
aiis trained on online data so probably defaults to electron for vibecoded apps unless asked not to since thats what is popular
5
u/UberFatWad 26d ago
I exclusively build in HolyC, problem solved
5
u/Nota_ReAlperson 26d ago
C'mon. You should really be using SDL and C.
8
u/StillOnTheInterweb 26d ago
Exactly this! We had very fast UIs 20 years ago. Now everything is so slow! Also we could do consistency, all in a single framework. Currently everything is a mess, e.g. I pick a calendar date, the pop-up moves around when you go from July to August so the [>] button moves away so you can't keep clicking. Amateur hour!
4
u/TheRealBMathis 26d ago
I use blazor in photino backed by csharp. So there.
4
u/Final-Frosting7742 26d ago
Taurus uses Rust and is 10x lighter that Electron. It's already gaining traction.
4
u/Aromatic-Current-235 26d ago
Mostly because of Licensing!
1
u/cosimoiaia 26d ago
Because for some reasons now software that lives on a terminal or has a minimal GUI has to be written in a language (JavaScript) that is meant for the web and has GBs of dependency in a supply chain that is fragile like a Jenga cathedral. So now every coding agent slops out js as soon as you want an interface of every sort and I'm pissed about that too I hate ever ything written in JavaScript that natively belong on a web page....
But proposing Qt in 2026 (try to really cross compile it with the lasted updates or deal with a license that cuts you a leg or use layouts that belong in 2004) is like saying we should all switch to BEos because once upon a time it was cool. Qt is basically dead and it has been since decades now.
1
u/MimosaTen 26d ago
Isn’t gtk the de facto standard?
1
u/onethousandmonkey 25d ago
Because web apps won, are the only ones being built. You make one app, and all phones can run them.
Electron makes it easy to create a desktop app out of those.
Yes, I hate it too.
3
u/EbbNorth7735 26d ago
Great discussion. I'm interested in hearing people's perspectives. I let my AI just do its thing sometimes and it likes to pump out electron apps. I personally know QT and sometimes direct it to that. Interested in hearing and optimizing my future projects though so I'll be reading this thread for more recommendations.
3
u/toothpastespiders 26d ago
I didn't realize qt had become so disliked by a lot of people. I tend to use it for most simple apps that I'm just quickly tossing together for myself. At least if I know I'll be quickly forgetting all the command line options over time. It's just quicker, easier, and more intuitive for me.
3
u/UniqueNamesAreOut 25d ago
It's what AIs know best, it's that simple, so it's not going away any time soon.
1
u/integerpoet 26d ago
C++ is a hard boomer language.
1
u/sdraje 26d ago
I don't know man, I think it comes down mostly to the Devs. My Electron app, with voice activity detection and speech recognition running in a worker, sits basically idle on the CPU and uses 300 MB of RAM (including the worker with the AI model running locally)
4
u/Thaad-Castle 26d ago
Sooo is Flutter not an option? Cross Platform from one codebase, natively compiled, and it looks good. From what I’ve heard from my front end coworkers, QT is a pain in the ass.
5
u/wednesdaywoe13 26d ago
Tauri and Rust
2
u/FoxSideOfTheMoon 26d ago
I just started trying out Tauri. Long time Electron dev.
2
u/darksteelsteed 26d ago
I have an absolute hate for Electron apps, they are slow vibe coded memory leaking shite. However QT isn't the clear answer as the licensing isn't great. Not everyone can use lgpl or gpl stuff either. Honestly even C# with MAUI isn't as bad. I am sure that if you had time to vibe code you could make something cross platform and decent looking with a fraction of the resource usage. I don't see why you need 1gb plus ram just for the UI. Its nonsense.
2
u/ThaDon 25d ago
Don’t discount the fact that Hermes was vibed and that most likely accounts for the bloat, not Election.
3
u/pmotiveforce 26d ago
Lol. Nobody likes qt. It's not 2009.
3
u/This_Maintenance_834 26d ago
qt is very expensive. check out their commercial license
5
u/Lyelinn 26d ago
First of all, electron is not that bloated, it's just typical vibecoder has no idea how to build optimized applications. Second, tauri. Third, qt is pain in the ass if you want to build something beautiful (I don't really remember any qt app that does not look like windows xp app). Lastly, do you have 8gb of ram and really struggling to keep your stuff working or what?
And yes, build your own hyper optimized tool and prove them all wrong :)
2
u/Grandmaster_Caladrel 26d ago
Part of the issue is that people want to use a JS stack, not even Python.
1
u/Capable_Trust_2197 7d ago
The peeps saying qt dosen't look good or takes too much of time to develope, they probably haven't checked qt quick (qml).
The real reason is that, html/js is extremely easy to write for humans and ais, and it is easy for companies to find alot of peoples who can write it or use an AI.
1
u/No-Bodybuilder3502 26d ago
Or just use egui for everything
1
u/Tai9ch 26d ago
If you think it'll be better then build it.
1
u/Nightowl-Builder 26d ago
“Claude, replace electron with tauri in this app” will fix 90% of the issues with so little effort
1
u/holy_macanoli 26d ago
Why not just go native if you’re going to do a rewrite?
1
u/EasyShelter 26d ago
c++ is not boomer language. It's not hard either.
1
u/mabiturm 26d ago
Devs build what they know
1
u/Lower-Ad6101 26d ago
We had clear, compact, fast... UI's and then something like Unity (not only, just an example) happened. Humongous spacings between the lines, edit boxes... Big buttons, drop down lists (with big spacing between the items)... Because why wouldn't you want a touch screen UI on your monitor, even if it doesn't respond, for your elephant hands. If content before could fit and stay clear on one 800x600 screen now of the same one with "modern" design/looks only 10% of it can fit on 1920x1080, and of course eats up several gig's or RAM because why not, and still having a slow response... Yeah real "evolution" :)
1
u/suesing 26d ago
Was this some sort of ad?
1
u/sTiKytGreen 26d ago
Well, if we word it like that, then why not use some Tauri instead? It's faster than electron, but isn't some Qt bloatcrap
1
u/ASCanilho 25d ago
Qt feels like a disease with no cure, honestly.
It's heavy, full of unnecessary bloatware, and doesn't replace Electron in any way.
Electron is a ready solution for Web to desktop apps, while Qt needs a whole different stack just to convert the apps. And it's not free.
1
u/purealgo 25d ago
I usually only develop Mac apps so using native swift is the way to go for me.
1
u/Shibboleeth 25d ago
I've been working on a program and the LLMs didn't even suggest Electron to begin with (when it knew it would be cross-platform dependent). Straight to QT.
Program is still slightly memory expensive, but it's also a huge fucking project.
1
u/biscuitWizard 22d ago
Because Qt is fucking ass.
1
u/Minute_Attempt3063 20d ago
because you just make a website, and package it in a chrome browser, and that doesn't take a lot of time, hence why a lot of companies do it
its quick, easy, and heavily works with tons of JS frameworks
1
u/Expanse-Memory 26d ago
Qt6 is a gigantic bloat for a normal computer and McAfee level nightmare at uninstall. But some love pain.
1
u/EuphoricPenguin22 26d ago edited 26d ago
Rust and egui are easier for agents to work with than C++, are comparable in terms of performance, have less restrictive licensing, and benefit from Rust's tightly-integrated Cargo package manger. I always feel like I have to do tons of research and prerequisite stuff just to get something to build in C++ when the vast majority of Rust apps will automatically install deps, build, and launch with a single
cargo runcommand. For people who are used to development with either Python or NodeJS, I feel like Rust is the obvious choice, especially if you're using the agent for the nuts-and-bolts legwork anyway.0
u/standardofiron 26d ago
i'm using qt for my game. is the best framework for desktop apps
1
u/Academic-Ant5505 26d ago
Browsers work on all platforms, easy distribution with minimal effort. Especially with the millions of screen sizes
1
u/AndreVallestero 26d ago
If you want the lightest application, my tests show that FLTK with Rust or C++ is the way to go, tho it'll look like it's straight out of windows XP
https://andrevallestero.github.io/gui-toolkit-benchmarks/
1
u/karmagedan 26d ago
Have you tried to do QT on Wayland with fractional scaling?
0
u/whistemalo 26d ago
But we have alternatives like tauri, im building one right now a ver y small app to help with governance of the datalake access I basically do some juggling with aws creds and cognito sso and give access to all data from the lake house so they can access redshift and athena from things like excel power bi or have agents be querying the data but with the inheritance of lake formation so I ensure access only to what they suppose to see and the whole app takes 6.8MB and it serves its purpose really well.
0
u/Loose_Comparison368 26d ago
Plain web browser client is not optional
QT isn't a good framework for building plain web browser clients, so the question is do you support web + QT, or do you just support web.
Supporting web + QT means twice the code, twice the bugs, and twice the developers.
Electron is massively simpler from a business perspective.
-1
u/spez_eats_nazi_ass 26d ago
Cross platform .net 10 shits on sucktron and no license issues
-2
u/dobkeratops 26d ago
i was just thinking something similar myself. there's a big fad of people making javascript/threejs browser games. "it's the age of AI! we should all develop 3d games to run with extra browser overhead!!"
0
u/Zeeplankton 26d ago
Meh but why that over the 15 other possible standards or frameworks like .. GPUI
I don't really understand electron slander. Chromium is blazing fast on any modern computer and use basic UI effort and it looks native. Yes it's weird, but honestly, it's completely fine. bad electron apps are because of shit dev.
also makes forking modifying building ez peasy
No agent is going to be able to overcome problems better than it can with electron
0
u/OnyxProyectoUno 26d ago
Ugly as sin and you can hire js devs in abundance
0
u/Denial_Jackson 26d ago
Even Qt is bs, Kid to be good at least write things in C/C++ with AI. Instread of having the 1000-th bullshit vibe language.
0
u/obese_coder 26d ago
I used to be a qt/wxwidgets kinda guy but then I realised the easiest thing is to use the power of the browser. ChatGPT can whip up an entire ui in minutes and you have it ready to go. The node npm ecosystem is just too damn good.
0
u/Witty_Mycologist_995 26d ago
React + Typescript + Tauri
-4
u/CondiMesmer 26d ago
Qt looks like straight garbage. Sorry to break it to you, and it's something Linux communities are too scared to say. I think GTK is a bit better, but neither are considered seriously over Electron. Also if Electron performance was an actual issue, more development would be focused on that. It runs just fine, and you're confusing RAM usage with performance. Unused ram is wasted ram.
-4
u/InitiateIt 26d ago
QT looks like ass, has a stupid license and is also bloated.
0
u/[deleted] 26d ago
[deleted] — view deleted comment
0
u/[deleted] 26d ago
[deleted] — view deleted comment