HACKER Q&A
📣 ackatz

Cross-platform GUI apps in 2024


What would you use to build a small, cross-platform app with a GUI in 2024? Ideally, I want it to be usable on Mac, Windows, and Linux. I usually use Python but my experience has been that it’s really hard to distribute Python GUI apps. I have heard that Electron is good for this situation. Are there any new frameworks or platforms that you would recommend?


  👤 ethanwillis Accepted Answer ✓
I haven't personally used it. However, I did watch a guy build from scratch his desktop client for his VPN using wails (https://wails.io/) + Golang. It actually went pretty smoothly and quickly. And he did it for mac, windows, and linux. Here's a link to his project since it's open source: https://github.com/tunnels-is/nicelandvpn-desktop

When I did build a production app with Electron (a few years ago granted) I ran into distribution difficulties as well. It's doable, but it was a pain. Specifically what was a pain was auto-update.


👤 fyzix
Flutter if you don't need multi-window support. Examples:

Ubuntu AppCenter: https://github.com/ubuntu/app-center

Android Nearby Share (Windows): https://www.android.com/better-together/nearby-share-app/

Google OneVPN: https://one.google.com/about/vpn

Rows.com (spreadsheets): https://www.youtube.com/watch?v=OEdQXBUPYOE

Superlist (project management): https://www.youtube.com/watch?v=ihpcubpQHA0

Supernova (collab. design): https://flutter.dev/showcase/supernova

Rive studio (animation): https://flutter.dev/showcase/rive

APIDash (Postman alt): https://github.com/foss42/apidash


👤 ackatz
I just learned of Flet (https://flet.dev) which seems interesting for Python. I may try this as well.

👤 colund
WxPython & WxWidgets are worth a look. I personally like that it uses the platform's native API rather than emulating the GUI and the license seems ok.

👤 iamflimflam1
Take a look at fyne - https://fyne.io/ cross platform using go.

👤 bpmedley
C# and Avalonia are getting better as time goes on.

👤 umen
what about Qt and wxWidgets all the c++ fast frameworks ? dead ? Only js rule the world ?

👤 tomcam
Livecode