Hacker News new | ask | show | jobs
by zenlot 254 days ago
Python, along with C++ enjoys the benefits of Qt. You can build great stuff with cross-platform Qt. And it won't be webview(Electron / Tauri) based.

What would be the benefits of this? I can't think of any yet.

6 comments

Web rendering has a rich ecosystem of tooling around a vast level of support for styling, layout, localization and accessibility support. By extension, it's one of the largest baselines in terms of knowledge, support and talent with at least some experience with.

This, of course, comes at a cost of performance as CSS alone is very complicated and has a lot there to support. On the flip side, there are many things that are easy to do with HTML+CSS that are much more difficult with native UI frameworks. Just the reflow support for multiple sizes/scaling in browsers is hard to match.

I worked on a team the switched v2 of our product from Python + QT to Tauri specifically to get away from QT. If you have any kind of specific design requirements, QT is pain. The ability to use the frontend web stack is a huge win especially for a team that already has frontend developers.

Rust was a nice bonus.

Doesn't qt also offers a webview solution?
It’s very basic. Good enough for oauth flow but not much beyond that, definitely not to host your entire UI. Also I don’t see what the point of that would be.
My point it's that you said you changed from QT to Tauri because of being able to use frontend frameworks but QT also allows you to do the same. Anki does something like that, but since you mentioned rust that might be the reason of the change to Tauri.
But why would you pull in an entire UI framework, QT, just to use its webview? If it’s not clear, these are local apps we are talking about. The webview loads local content. This is what tauri does.
This benefits people and teams who prefer to build UIs with html/js/CSS.
I've been building a Python+Qt+PyInstaller app for a decade (ActivityWatch) which we are migrating to Tauri for a wide range of reasons. Perhaps the largest one is easy cross-platform packaging/builds (which is a lot of work with PyInstaller)
Avoiding Qt licensing
Quite a few options there. Never really a problem.
The benefit is that you get to use a web-framework to write your UI... The trade-off is that the world gets another app that probably could have been a website.