Live data from Hacker News

Ask HN: What would you use to make cross-platform desktop application?

news.ycombinator.com

41–50 of 116 posts

Re: Ask HN: What would you use to make cross-platform desktop application?

#41

Obligatory: Qt. I've been tasked as a Qt dev at my day job for the past ~2.5 years writing cross-platform applications. It works, the documentation is pretty fantastic, and you'll find no shortage of help online to get over the admittedly decent learning curve if this is your first swing at "c++" programming. Edit: As mentioned below, PyQt is also pretty fantastic. My most recent venture into the PyQt world at work w…

Seconded: - QT is a great and very-well designed library with solid performance, a fast release cycle and superb documentation. - It provides a rich and well thought-out component library. - It is used by many companies to build real-world applications. - It has a pretty liberal licensing scheme. The commercial license (if you need it) is not that expensive. - It provides bindings for many scripting languages like Py…

FWIW its version of CSS is just terrible, there are a lot of properties you cannot control with it (e.g. display properties), its style inheritance model is equally terrible (for some reason if you do .foo, the foo object will get the style as will all of foo's children), and forget about animations. To be fair, I did test it out at v5 and they may have improved it, but at that time it was by no means a fair thing to call it css.

Re: Ask HN: What would you use to make cross-platform desktop application?

#42
post #22
post #18

If you can, wait WebAssembly support for Web/DOM API and support from languages like Kotlin/Swift. This will be a game changer.

I hear people say this and am always incredulous that this stack would be available (let alone viable) in the next 5 years.

As people were incredulous when I said last year WebAssembly will be shortly available in the 4 major browsers, and now it is ;-)

Re: Ask HN: What would you use to make cross-platform desktop application?

#43

Lazarus is a cross-platform IDE for native desktop applications on Windows, Mac and Linux. It produces fast, low-memory, single executable files for easy installation and deployment. Your app can use native OS controls - you won't be gluing together different libraries from different languages like you do with some scripting languages (with all the bloated size and performance issues that entails). Why isn't it more…

+1 using it since ages.

Re: Ask HN: What would you use to make cross-platform desktop application?

#45
I’ve had problems in the past trying to maintain a consistent look and feel for my apps across the three major desktop platforms. I was only able to recently achieve this by creating a dotnet core web app (served by the kestrel server) that is rendered by an Electron (chromium) app. With this done, I wrote scripts to create deployment packages for Window, Mac Os and Linux (deb). I can say my life has been been made a little easier.

The fact that the dotnet core app does the heavy lifting makes the whole application relatively fast.

See an example here https://www.ccasystem.io/Resources/DownloadDesktop

Re: Ask HN: What would you use to make cross-platform desktop application?

#46
post #34
post #27

Electron hasn't stopped Spotify from making the most widely used music client and VSCode from making the third most popular IDE.

I'd audaciously guess that it's the songs you play in it that makes the spotify app popular, not the pack of ones and zeroes that the developers thereof like better.

Speaking just for myself here... I use Spotify every day and I can guarantee that I would switch if the software experience was bad. I honestly can't think of a time the app crashed. It can switch between my mobile devices and the desktop seamlessly almost every time. The overall design is intuitive enough _and_ it happens to come in a color scheme that I love.

I used to find my music elsewhere and could do it again if I had to.

Re: Ask HN: What would you use to make cross-platform desktop application?

#47
I'm developing a file manager [1] and asked myself the exact same question a year ago. I chose PyQt and am quite happy with it. I wrote a blog post [2] back then about your very question. If you pick PyQt, then you will also find several other articles on the blog [3] interesting. Basically, whenever I encountered a hurdle, I posted a solution.

[1]: https://fman.io

[2]: https://fman.io/blog/picking-technologies-for-a-desktop-app-...

[3]: https://fman.io/blog

Re: Ask HN: What would you use to make cross-platform desktop application?

#48

Who cares if Electron is unpopular (is it?)? I use Electron apps daily: Atom, Spotify, and Wmail, and I'm perfectly productive with them. Atom is definitely slower than Sublime Text, but I'm not sure it's Electron's fault (I read that it isn't). As for Spotify and Wmail, you can't even tell it's Electron, and certainly no average user cares or would ever know. I would do what makes sense for your app and makes it eas…

Electron certainly isn't unpopular with the people who use applications built with Electron.

Re: Ask HN: What would you use to make cross-platform desktop application?

#49

Who cares if Electron is unpopular (is it?)? I use Electron apps daily: Atom, Spotify, and Wmail, and I'm perfectly productive with them. Atom is definitely slower than Sublime Text, but I'm not sure it's Electron's fault (I read that it isn't). As for Spotify and Wmail, you can't even tell it's Electron, and certainly no average user cares or would ever know. I would do what makes sense for your app and makes it eas…

We built Spectrum (https://www.devspectrum.com) for filtering logs and it was great to work with and plenty fast.

Re: Ask HN: What would you use to make cross-platform desktop application?

#50
Maybe consider Xojo, which is like a cross-platform Visual Basic. I know, that means you're programming in Basic, but it's the fastest tool I've found & the compiled binaries are relatively small (Mac version of my current app is 11 MB uncompressed). It supports Mac / Windows / Linux, but it also compiles to Raspberry Pi, iOS, Web, and Android support is in the works. Pricing is cheaper than Delphi or Qt. But if you need to collaborate, there aren't as many Xojo / REALbasic developers out there, as something like Qt:

http://www.xojo.com/

For other Windows/Mac stuff I'm working on, I use C++ for the cross-platform code, and Win32 API / Obj-C for the platform-specific interface layers.

Post reply on HN