Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I like and understand the paradigm of using web technologies to build GUI apps. I have yet to find any desktop framework that even comes close to the DX of using web tech.

I recently explored both Tauri [1] and Wails [2]. Especially Wails is lots of fun. The simplicity of go paired with the fast iteration I get from using React just feels awesome. And the final application is ~10 MB in size!

[1] https://v2.tauri.app/ [2] https://wails.io/



OTOH, I have yet to see any web framework that comes even close to the UX of native tech.

It's almost as if web crap is optimizing for developer experience at the expense of users.


In SW development you need to make compromises. You can not have all of: quality, performance, memory/cpu/disk efficiency, security, development speed, low effort, cross-platform app, accessibility, all the business features, etc. Which corners would you cut? You mention native tech but you seem to ignore the enormous tax in development time/knowledge, etc. So let's say you aim for the best UX. Are you ready to sacrifice business features, or any other aspect? I'm not advocating for crappy UI/UX, but I would rather use an electron app that has all the features I need, than native app that doesn't.


I have thought about this and I'm not sure that Electron really is to blame here. It makes building an application accessibile, which means that there will be lots of apps built with it, many of which won't be any good.

Just like many native apps will also be horrible in terms of UX. Good apps are good. And I believe that it's entire possible to build an amazing app with Electron.

Although not everyone might agree, IMO VSCode is a great example of that.


I fully agree with this. Electron is hated here as if it was the source of all evil. When Electron came (and node-webkit as well), there were very limited options to create fully cross-platform apps easily. I tried multiple ways (including Qt) but it was very cumbersome and slow to progress. With Electron not only was I able to create a usefull app quickly, I could reuse almost all the code on web. Ok, it takes space and consume memory inefficiently, but thanks to Electron a lot of useful apps exist that otherwise wouldn't or would be much worse. Today Tauri or something else might be better choice, but hating electron seems really out of place.


I dunk on electron, but it’s a love-hate sort of thing. There’s some great apps out there due to electron. VSCode is great. This http server is well done and looks handy!

Personally though I’m just greedy. I want the best of QT and Electron. Figuro is my attempt at realizing that. ;)


That's nice. Does it use the native components, or are you rendering that all lower level?


You say that, and I hear the arguments, but numbers don't lie.

https://x.com/daniel_nguyenx/status/1734495508746702936

Further discussion can be found here: https://www.macstories.net/linked/is-electron-really-that-ba... and in the linked video.

You say at the expense of users. But when even Apple does't go all native, it's telling.


Interesting links, though it seems more due to SwiftUI than anything. SwiftUI still seems rough compared to good ole Cocoa. I also remember when Electron apps ate 100% CPU due to blinking text cursors.

For what’s its worth my Figuro library does pretty well for live updating text and scrolling! And I haven’t even optimized layouts yet, it currently re-layouts the entire tree for every frame.


Could you list out your native GUI stack, for Windows, OSX and Linux?


Linux: still can't decide between Qt and Gtk.

macOS: too busy rewriting it in SwiftUI before Apple pulls the plug on Obj-C.

Windows: https://old.reddit.com/r/Windows10/comments/o1x183/


Did you try Flutter? That one worked for me at least as well as using the web approach. Definitely from a DX side.


I have tried Flutter and liked it for mobile development. Maybe I should give it a shot for desktop. Though I believe those that dislike Electron and the likes for not being native would also have a bone to pick with Flutter.


With flutter you give up all the standard web components, accessibility defaults etc. If you don't mind, then it's definitely an option.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: