7 ms·
> Web technology is the most widely-known UI toolkit in the world. Poor choice of words there IMHO. The reason Electron apps get a lot of flak is because they
by jorisw 4mo ago
> Web technology is the most widely-known UI toolkit in the world.
Poor choice of words there IMHO.
The reason Electron apps get a lot of flak is because they are everything _but_ a UI toolkit. They consistently miss the mark in adopting UI patterns from their host OS.
Web tech is just web tech. Yes it will allow you to render a button, but even unstyled, the button won't necessarily look native to the OS, and will vary between browsers.
- wilg 4mo agoNone of that changes whether it's a UI toolkit, which it surely is.
- utopiah 4mo ago> look native to the OS Is that a problem? A button with a legible label is a button. The host OS doesn't have to look exactly like the applications it runs.
- jorisw 4mo agoConsistency is a large factor in any good design, UI design more so.
- Gigachad 4mo agoThey have internal consistency. The iOS version looks like the macos version which looks like the web version, etc. This upsets HN users but the rest of the world decided that apps looking like windows built ins doesn't matter.
- ahartmetz 4mo agoIt's more like developers decided - nobody asked the users.
- debazel 4mo agoironically the only group of users I've found that actually care about native UI, are other developers and Mac purist.
- ahartmetz 4mo agoI have seen users having trouble with pixel soup UIs. They may not think "This should be in a native toolkit", but they do think "How the hell do I subscribe to a folder in the new Outlook?".
- whizzter 4mo agoRight, but bad UI's was not uncommon before webviews, if anything the spartan-ness of the web often simpified patterns whilst reliance on weird hotkeys in desktop apps isn't uncommon.
- ahartmetz 4mo ago>reliance on weird hotkeys in desktop apps isn't uncommon The only examples I can think of are actions that are intentionally not easy to reach. How exactly it's done is platform-specific, but the (mis)feature doesn't come from the platform and can be implemented in other ways on other platforms. - Apple UIs hide some power user functionality behind obscure hotkeys - Similar: Shift-Delete to permanently delete (Windows, KDE) - Similar: Shift-right click to "Open With..." (Windows, KDE) - In desktop apps that FOR SOME REASON try to look more like web apps, the hidden menu bar can be restored with Alt or Alt-M (Firefox, KDE)
- Gigachad 4mo agoThe problem in these usability cases is pretty much always layout and constant redesigns rather than the exact theme the button has. I've seen plenty of unusable native ui soup UIs and very clean and simple custom UIs.
- ahartmetz 4mo ago
- p-e-w 4mo agoThat’s why HN users constantly advocate for Vim, a program in which every single thing works completely differently from every other modern application.
- vintermann 4mo agoYes, if there's one lesson from historical UI research that still holds, it's that mode switching is expensive. That's why people install vi plugins everywhere. Wait...
- p-e-w 4mo agoVi plugins don’t even exist for the vast majority of applications.
- vintermann 4mo agoThe last resort is to switch to ROU mode (key combo for entering it is :wq)
- gf000 4mo agoConsistent like what? Like maybe a decade ago one could say that osx was consistent, but nowadays even SwiftUI and cocoa is visibly different, let alone every second app that uses electron. And people don't care. Windows has like 4 frameworks available on a bare new, latest OS install, just go deep enough in the "settings" or whatever they call it, and you can reach down to winforms. And on top the start menu is a react element! (And in Linux you have the gtk and the qt world, and everything else)
- jorisw 4mo ago> SwiftUI and cocoa is visibly different Do they render different looking buttons?
- deleted 4mo ago[deleted]
- deleted 4mo ago[deleted]
- eterevsky 4mo agoWithin OS consistency is much less of thing a thing than Web design conventions. Windows by itself has had several different UI frameworks over the years, so different "native" Windows programs can look completely different from each other.
- oneeyedpigeon 4mo ago> Within OS consistency is much less of thing a thing than Web design conventions. Sorry, are you saying that two random web apps will typically share more UI consistency than two random Windows apps? Because, although I'm not currently familiar with Windows, I would be amazed if that were true.
- m-schuetz 4mo agoConsistency is the reason why Electron is great. Consistency of the UI across operating systems.
- jorisw 4mo agoIf you think operating systems have nothing to offer in terms of UI patterns or guidance, then yes, that's a different type of consistency.
- d12bb 4mo agoGreat for the developer. The user doesn’t use Mac, Windows and Linux. Just one for work and one at home, with mostly different apps, so they couldn’t care less if it looks the same on different platforms.
- m-schuetz 4mo agoThey may care, however, if they get anything at all. I do not have the resources to target something to all platforms, so the alternative wouldn't be "Users get UI targeted towards their OS", the alternative would be "Users get nothing since developers don't have the time to also target their system".
- jorisw 4mo ago> I do not have the resources to target something to all platforms Some speculate that agentic engineering will enable the return of native apps
- skydhash 4mo ago> I do not have the resources to target something to all platforms What resources is actually needed? More often than not it just requires good engineering. You do not have to duplicate everything across platforms.
- m-schuetz 4mo agoTime. I have the time to maintain a single GUI. I do not have the time to maintain three GUIs. Of course they'll be 99% the same, but checking that this 1% difference behaves and looks fine accross systems adds a substantial amount of effort that I simply can not support. And for what exacatly? I want them to be identical accross systems, not different.
- DonHopkins 4mo agoA foolish consistency with terribly designed shallow superficial desktop user interfaces dreamed up by overpaid cocaine addled corporate boutique brand designers with not only no experience but actual burning contempt for usability and human factors and accessability and affordances is the hobgoblin of little minds. https://daringfireball.net/2025/12/bad_dye_job https://daringfireball.net/2025/12/bad_dye_job
- jorisw 4mo agoYes, Dye botched [mac/i/tv/etc]OS 26. That doesn't say anything about the value of whatever UI kit is in place, being shared consistently by apps. A virtue that, apparent from this thread, is no longer universally shared.
- port11 4mo agoOS-level consistency is also consistency. It depends what we value. A lot of apps’ design could’ve been basic, OS-like UI. Apps such as GymBook or WhatsApp are internally consistent while still adopting many elements from the system’s design, instead of reinventing the wheel.
- oneeyedpigeon 4mo agoThere are two types of consistency in this context: consistency within an OS and consistency across them. I, too, prefer the first because I only really use one OS, but this preference varies. I don't think it's right to say that the first case = "ui toolkit", but the second case doesn't.
- jorisw 4mo agoConsistency as a design virtue applies to a single user's experience. This means consistency within the OS.
- conradludgate 4mo agoHow is it a poor choice of words? It might not be "native" UI, but they never claimed as such. I've always felt that native UI on Linux always looks incredibly ugly and I'd much rather use a nicely styled HTML+CSS layout instead. In my experience, Electron mostly gets flak for being bloated and slow, it not being native is sometimes a secondary point people add on top. I've always wanted to build a direct-browser integration that could use HTML+CSS for the layout, but avoids needing a JS runtime. Idk how lightweight servo is but one day I hope I will see my idea come to light
- noufalibrahim 4mo agoI don't mind the idea of using HTML components and widgets to style desktop applications. CSS and the DOM are widely known and reusing those for desktop apps is probably a good idea. The problem, as you've pointed out, is that electron apps are bloated and slow. If they became the default and my editor, chat client, terminal, and everything else that I keep open were just thin layers around web applications, I'd rather figure out a way to move things into a browser rather than pull a piece of the browser out to wrap these applications.
- wiseowise 4mo agoThere’s a point where it stops scaling in the browser, whether it’s due to scale or poor practices. For example Slack is annoyingly slow to start up and work in my FF, but works OK as an Electron app.
- djxfade 4mo agoThis is pretty much what Tauri solves. It re-uses the systems WebView. So the built apps are tiny (kb to a few mb)
- nicoburns 4mo ago> I've always wanted to build a direct-browser integration that could use HTML+CSS for the layout, but avoids needing a JS runtime. Idk how lightweight servo is but one day I hope I will see my idea come to light Blitz (https://github.com/DioxusLabs/blitz https://github.com/DioxusLabs/blitz) is exactly that. It's a new custom browser engine supporting standard HTML/CSS with a native Rust API (and optional integration with Dioxus which is a React-like UI framework in Rust). Baseline binary sizes are around 10mb. We share a few components with Servo (Stylo the CSS engine (also shared with Firefox), and html5ever the HTML parser), but we've built a bunch ourselves too: notably we have our own layout engine, DOM tree and event handling. Servo is unfortunately tightly coupled with SpiderMonkey, and there is little prospect of removing that dependency in the short term.
- Abishek_Muthian 4mo agoEvery time I use Zed across Linux, macOS and Windows , I'm amazed stable and performant it's GPUI framework is. As a user, I'm very happy with it; of course some basic features like accessibility is missing but I'm sure it will be implemented soon. As a developer, I'm not sure what's the barrier for entry is apart from Rust then again it's the USP as well.
- fny 4mo agoLive reload. GUI development in compiled languages is a pain compared to web development.
- eklavya 4mo agoTry dioxus, it has live reload but it's a work in progress.
- ga_to 4mo agoDioxus seems to be 'just' another way to generate HTML on the desktop. Electron but Rust? Is there a legitimate upside there?
- neobrain 4mo agoWith Dioxus, program logic compiles to native code instead of running it through a JS engine, and it ships its own HTML renderer (Blitz) instead of bundling a whole browser. So it's a lot more lightweight and performant than Electron. As a minor bonus, the live-reload is also faster than what frameworks like React do. It truly has subsecond latency, which isn't exactly a game changer but is nice when iterating on visual details of an app.
- Abishek_Muthian 4mo agoSounds similar to Wails. It does the same but with Go instead of Rust.
- pjmlp 4mo agoYeah, it is mostly laziness and cost cutting at the expense of users. Nowadays there isn't even an excuse anymore, just vibe code it away in native frameworks.
- ThatMedicIsASpy 4mo agoWhen I can modify my desktop/theme (KDE) with css I will happily start doing it since that sounds easy.
- Zetaphor 4mo agoGood news! https://9to5linux.com/kdes-new-css-based-style-engine-union-is-coming-to-kde-plasma-6-7 https://9to5linux.com/kdes-new-css-based-style-engine-union-...
- d12bb 4mo agoStyling every application independently because it’s all individual Electron UI without a shared toolkit is much better indeed…
- gf000 4mo agoWhich native framework? Even in a "post-vibe code" era I wouldn't want to create multiple versions of the same app, and none of the "platform-native" GUI toolkits run on everything. SwiftUI is apple-only, gtk has pretty bad compatibility on non-linux, qt is decent but requires C++ or python, and even so still not much for mobile. Don't even get started on "Windows frameworks", because as I write this sentence they may have left a new one in the ditch. Flutter may be the closest, but why didn't they go with e.g. Java instead of a new language? So yeah, if you want a truly universal UI then web is your best bet.
- jorisw 4mo ago> if you want a truly universal UI Right. If you want your app to look the same, custom way, ditching what the OS has to offer. Some developers still believe an operating system has useful UI components and patterns worth adopting. From this thread it's clear that there's plenty who don't. Personally I view that as a regression.
- smackeyacky 4mo agoLooking native has long left the station as an objection about a UI. Like 25 years ago. Nobody gives a damn since Microsoft stopped giving a damn.
- vintermann 4mo agoI'm not part of the Apple world, but I thought they gave a damn?
- jabwd 4mo agoNah they stopped caring as well. Developing an application for macOS is hell nowadays. I hate the state of things but both Apple and Microsoft dropped the ball. Linux is even worse, so yeah I don't see a reality out of this unless we actually create something that surpasses the web in all measures.
- nobody_r_knows 4mo ago[dead]
- DonHopkins 4mo agoLiquid Glass says no, they don't give a flying fuck any more.
- latexr 4mo agoLiquid Glass proves they do care (otherwise they wouldn’t have gone to the trouble), they’re just bad at it now.
- yurishimo 4mo agoDepends on the tool. We (mac people) tend to prefer native toolbars and settings menus, but I would say the days of relying on a "native" textarea or button are now behind us. The other thing I find most Mac people appreciate is a shared understanding of hotkeys and if your app goes against the norm, one of the first feature requests will be to add configurable hotkey support. Unfortunately, Apple has dropped the ball with their newest native apps in regards to UX and it will take years for them to go back and improve things. The new OS this fall is aiming to start that process, but it will still be a band-aid in some respect.
- Culonavirus 4mo agoThat is not why people use Electron. The goal is not and never was to just be a "UI toolkit" and "adopting UI patterns from their host OS". Chromium has so much stuff packed into it, its insane. All that utility comes with Electron. And that's a good thing. If you ever worked with video, for example, you know that having the full power of a modern browser in a desktop app is a game changer. Video playback (not to mention transcoding, which is also possible with modern web and webcodecs) is a complex beast, implementing that yourself is massive undertaking, not to mention in a desktop app that is supposed to work on win/mac/lin. I've built apps with Electron in tens of hours that would otherwise take me tens of days or more (and thats with AI because I'm not a video expert).
- Levitating 4mo agogstreamer is not that complicated
- TylerE 4mo agoIt has a really really crappy security record, though.
- TingPing 4mo agoThose issues are typically from the decoding libraries you choose. Which could even be ffmpeg if you wish. GStreamer just provides a nice high level API.
- one33seven 4mo agoElectron doesn't?
- veltas 4mo agoLast time I checked there's a small industry of gstreamer contractors, so it's not that simple.
- kiicia 4mo agochromium is basically operating system at this point, it lacks kernel and ability to boot independently (added in chromium os), which is both good (from abilities standpoint) and bad (when copy of chromium is bundled with every app that renders webform with text field and button and nothing else) when it goes about using webapps as desktop apps, native PWA support should be used, it would - in theory at least - lessen most issues electron apps have but will need extra effort and that's why we can't have nice things (like RAM free for other tasks)
- wiseowise 4mo ago> Web tech is just web tech. Yes it will allow you to render a button, but even unstyled, the button won't necessarily look native to the OS, and will vary between browsers. The irritating, and unnecessary, pedantry.
- nnevatie 4mo agoIndeed. Even Qt isn't native, in the most purist sense.
- LunaSea 4mo agoWho cares if it looks native? Native UIs change all the time too and not always for the better.
- jorisw 4mo agoChange over time is something different from apps looking vastly different at any given time.
- valleyer 4mo agoUnfortunately nowadays even the built-in apps on the major desktop OSes are inconsistent, so the temptation for third-party apps not to care is somewhat understandable.
- Levitz 4mo agoI change clothes all the time too, still match the pieces of clothing each time. There's aesthetic value to coherence. There's also design, usability value. I have Telegram, Steam and Firefox opened right now and each one of them displays different minimize/maximize/close buttons on the top right. That's not ideal.
- m-schuetz 4mo ago> They consistently miss the mark in adopting UI patterns from their host OS. What you suggest is a disadvantage is one of the key advantages of Electron to me. I precisely do not want my things to look different on different OS. I don't have the resources to test my apps on all devices, and knowing that whatever I test on one system looks the same on another is A+.
- jorisw 4mo agoThat's an advantage to you. Not necessarily to your users.
- m-schuetz 4mo agoThe alternative is not that users get a UI specific for their OS, it is that users get nothing since I do not have the resources to develop for multiple systems. So yes, it is also an advantage to users.
- Klonoar 4mo agoUsers don't actually give a shit. This is a techie complaint, and that's opting for a charitably nice description.
- skydhash 4mo ago> Users don't actually give a shit. Have you ever had a job as a tech support? If not, you don’t have anything to say. People do complain about inconsistent UX. Especially when it does not behave like the platform it’s on.
- Klonoar 4mo agoYeah, I've done that job countless times in my 20 year career. Knock it off already.
- DonHopkins 4mo agoSince when did anyone ever complain that youtube, google maps, roblox, or any other web sites didn't have native buttons and UI patterns? Are you implying that the Windows, Mac, and Linux native desktop user interfaces don't all totally suck??! Or that there wasn't a huge celebration when Alan Dye finally left Apple for Meta? Or that users are clamoring for Jony Ive's infamous shallow superficial visual elegance over affordance and discoverability and usability? Is it just too confusing for people to use youtube because the buttons don't look and feel exactly like native Mac buttons on the Mac and native Windows buttons on the Windows and whatever the kids are using on Linux desktops these days, therefore nobody uses youtube, and that it will only ever get popular if it just had a native look and feel?
- jorisw 4mo agoBasically you're saying websites are the same as apps, and whether they're used in the browser or as a desktop app, the UI is fine to ditch that of the OS. Fine if you think so. I'll be sad to see OS and apps diverge completely in terms of UI.
- d12bb 4mo agoYouTube succeeds for its content. Its UI is hot garbage both in the web and their apps. Google Maps is an atrocity and I’m very thankful Apple has decent data where I live. Roblox I don’t know, other websites I consume mostly in Reader mode.
- raincole 4mo ago> UI patterns from their host OS I genuinely wonder who ever want that, and what apps those people use on their PC. Can you imagine, for example, Blender Foundation says that their next goal is to make Blender's UI look more like the host OS?
- rjrjrjrj 4mo agoI have used Blender just a bit, but it was very jarring when I first opened it and discovered that it has its own menu bar within the window, rather than at the top of the screen. It has its own save/open window rather than using the system-provided one, as nearly all truly native Mac apps do. I doubt most Mac users like this. I have somewhat more experience with QGIS. It has a standard Mac menu bar, but the icons are inelegant and Windows-ish, window layouts are Windows-ish, dialogs don't behave correctly in Mac full screen mode. It could use a MacOS glow-up. I think Visual Studio Code (native menu bar, native save/open, but a core UI kind of unto itself that is consistent across Mac and Windows) does a better job of balancing cross-platform vs native. And then there's the approach taken by Adobe and Microsoft Office. These apps do a much better job of adopting native platform appearance and conventions (sometimes at the expense of application consistency across platforms).
- MoonWalk 4mo agoSo... it has a menu bar where it belongs: on the application's main frame. But yes, that'll be jarring for Mac users, who have suffered a single menu with split-personality disorder for far too long. As for the common dialogs, I agree with you. There's no better example of why you should stick with common dialogs than the shitshow that is Microsoft Office. The file-save... thing is mind-bogglingly bad. It looks like a hastily-thrown-together debug screen. You have no idea what you're looking at. The fields are primitive, unnecessarily-huge box outlines. There's no treeview to show you where you're working in the filesystem. There's a big list of what, history? Why? Garbage.
- resonious 4mo agoAt this point the only OS with a consistent look and feel at all is Mac. For the other OSes, I don't even know what a "native" look and feel would be. And most apps have their own branding and style they want to tout anyway. So I don't think "apps should look native" is the leading reason to not use Electron. For me, the leading reason to use Electron is the fact that I already have a browser running so why not just use that to render your webpage... Make it a PWA if you want it in its own window.
- jorisw 4mo ago> Make it a PWA if you want it in its own window. Seems like I'm part of a shrinking minority (in this thread at least) who believes that web[sites/apps] in a browser, and apps running on the host platform, are different things in terms of UX expectations.
- devy 4mo ago> At this point the only OS with a consistent look and feel at all is Mac. Apparently, NOT! Apple's controversial Liquid Glass UI disrupted their long-standing Human Interface Guidelines by prioritizing cinematic aesthetics (transparency, refractions, and blur) over core tenets like readability, contrast, and content deference. Critics highlight that transparent, light-bending panes frequently clash with underlying wallpapers or videos, causing text and buttons to become illegible. This is a HOT topic in recent WWDCs and amongst UI designers.[1] [1] https://blog.prototypr.io/why-apples-liquid-glass-design-is-a-step-backward-for-ux-5db4652c2a4c https://blog.prototypr.io/why-apples-liquid-glass-design-is-...
- stared 4mo agoTauri is getting traction in the meantime. A non-native UI has some issues, but also one clear advantage - it is easier to make a cross-system app with the same looks.
- duped 4mo agoTauri is a good way of packaging offline PWAs. It kind of sucks for building proper applications. The entire model for integrating with a local backend is just bonkers (no, I don't want my local application to pretend to be a web server - it's not a web server, I want to give you actual host bindings and share memory).
- divan 4mo agoThis. It's nuts how the whole industry accepts that typesetting engine from 80s with bunch of hacks on top is currently dominating cross-platform UI development.
- veber-alex 4mo agoNobody cares about this anymore. On Windows you have 20 different ways to write native apps that all look different. On Linux you have Qt/GTK and god knows what else. Only macOS is somewhat consistent although with Liquid Ass it's also getting worse.
- xboxnolifes 4mo agoI understand historical usage of the term with regards to desktop, but im unsure how you could consider HTML, CSS, JS, and runtime as anything other than a UI toolkit. They control the layout, styling, and actions of a UI.