Live data from Hacker News

Tauri – Electron alternative written in Rust

tauri.studio

51–60 of 435 posts

Re: Tauri – Electron alternative written in Rust

#51
post #31

When are we going to get back truly native apps? Flutter Desktop works great, and there are a bunch of nice GUI libraries for Rust, also some new developments for the JRE.

Probably never. The web is becoming, if it hasn't already become, the universal platform for application development and distribution, and javascript the One True programming language. Every holdout will eventually and inevitably be assimilated, either transpiled into javascript or compiled into WebAssembly.

And it's partly the fault of the native programming community. It should be as easy to write a native, cross-platform application as it is to write html, css and javascript. Native developers should recognize what works about the web paradigm and adapt to it. There should be forks of these technologies specifically designed for native application development rather than documents. But that never happened, GUI development is still basically programming and it still sucks and now the train has left the station. The only relevant innovation likely to happen now will be iterating on the web-app model.

I mean, I'm looking at the layout tutorial for Flutter now[0]. It's nesting function calls and you have to update a yaml file to include an image, whereas with HTML it's a simple table or maybe grid and the img tag. This example for Rust[1] is ridiculously verbose and noisy compared to the web stack. All GUI programming is. Meanwhile I can write a fully functioning website with nothing but a text editor. No need to install a language runtime, package manager or IDE, no need to learn a company specific workflow or follow a style guide. No need to memorize a new set of quirky verbs for a CLI.

I don't even like the web-app paradigm, but I can totally understand why it won.

[0]https://docs.flutter.dev/development/ui/layout/tutorial

[1]https://github.com/gabdube/native-windows-gui

Re: Tauri – Electron alternative written in Rust

#52
the fact it use Apple internet explorer make it a dead on arrival. One does not needs more than three braincells to understand the the true electron successor will simply have an api that enable a range of allowed chromium versions installed natively. If not found then it will transparently auto install the desired version, at the same time making this version available for other apps.

Re: Tauri – Electron alternative written in Rust

#53
post #29

Earlier quoted context omitted.

Have you tried Sciter?

I do not really understand the lisence of this. In the repo it says its open source but on the website they ask for money?

Sciter currently isn't FLOSS, but you're free to use its dynamically loaded binary distributions.

Re: Tauri – Electron alternative written in Rust

#54
post #11

Aaand still bundling what amounts to an entire web browser just to do what one has always been able do in Qt/GTK/whateverTK. Sad.

It doesn't bundle it though, it uses the one that comes by default on the OS. Which is already a huge improvement, because it should, in theory, be able to share resources across different apps (e.g. the DLL should only be loaded once in physical memory, etc...).

Ah, good point! Thanks for the clarification.

Re: Tauri – Electron alternative written in Rust

#55

Lots of their roadmap for 2021 is still undone. Something be to worry about?

Is there any company/project that made and published their 2021 in the beginning of the year, and successfully completed all the tasks verbatim in the end of the year? My guess is that the number of companies/project who completed everything is close to 0.

Re: Tauri – Electron alternative written in Rust

#58

Earlier quoted context omitted.

>(no JS, or at least optional) IMO reply At this point why not focus on some actual GUI toolokit, like write a Qt clone in Rust, for real world apps we don't need all the CSS and HTML crap, you need simple layout, GUI components and an option WebView you can embed in the app if needed. Probably there is no commercial interest to pay professional developers with real experience to implement this.

HTML and CSS, while not perfect, are still the best tools I've found to create a pleasant UI. Other libraries like Qt do work , but it's more difficult to get things looking exactly how you want them to look.

It is definitely slightly subjective, but come on. God damn winforms were more productive than HTML+CSS hooks you have to go through. In sane frameworks you have proper layouting (not some third party css library with ton of boilerplate to do something like vbox/hbox) and easy customizability through inheritance (eg. try to create a datepicker in HTML.)

Re: Tauri – Electron alternative written in Rust

#59
post #4

Earlier quoted context omitted.

It would be better to use Rust+Servo (no JS, or at least optional) IMO

>(no JS, or at least optional) IMO reply At this point why not focus on some actual GUI toolokit, like write a Qt clone in Rust, for real world apps we don't need all the CSS and HTML crap, you need simple layout, GUI components and an option WebView you can embed in the app if needed. Probably there is no commercial interest to pay professional developers with real experience to implement this.

I have written a full OS like GUI in JS proving that it can be tiny and memory efficient. The GUI part of the application is about 2k loc across two JS files plus CSS and includes full file system display and navigation. It’s all vanilla JS and static DOM methods so it’s as fast and memory efficient as the browser allows.

It’s amazing how fast the browser can be for this (and tiny) when you aren’t using querySelectors, vDOM, or event listeners.

Re: Tauri – Electron alternative written in Rust

#60
post #6

If anyone wants to know how it works: > [leverages] WebKit on macOS, WebView2 on Windows and WebKitGTK on Linux. So cross-platform compatibility isn't guaranteed, unlike Electron. https://github.com/tauri-apps/tauri

"cross-platform compatibility" isn't guaranteed on the web either, yet somehow "cross-platform compatible" websites exist. It isn't a problem that's so difficult it requires wrapping a 60Mb runtime around every individual app instance.

Chrome is the new IE6, and guarantees cross platform compatibility everywhere it uses its own renderer though. (Basically !iOS.) It's a strong reason for choosing to Electron for your "native" app.
Post reply on HN