Live data from Hacker News

Tauri vs. Electron – Real world application

levminer.com

21–30 of 107 posts

Re: Tauri vs. Electron – Real world application

#21
post #16

The 5th point in this article is what makes me end up using Electron most of the time. As much as I love Tauri (and Wails), WebView requires to make sure the application renders exactly the same across all platforms. Sure, Electron comes with its downsides like the article rightfully points out. But having a UI that renders and behaves exactly the same on all platforms (thanks to the version locked Chromium bundled i…

I recently chose Electron over Tauri for the same reasons. Tauri would be a better fit for my app in some respects but it's a music player and Safari doesn't support all the audio formats I care about.

https://github.com/milesegan/minimoon

Re: Tauri vs. Electron – Real world application

#22

There's also https://wails.io , which uses Go instead of Rust.

and https://neutralino.js.org/

Their exciting part is

> You can extend Neutralinojs with any programming language (via extensions IPC) and use Neutralinojs as a part of any source file (via child processes IPC).

still:

> Neutralinojs doesn't bundle Chromium and uses the existing web browser library in the operating system (Eg: gtk-webkit2 on Linux). Neutralinojs implements a WebSocket connection for native operations and embeds a static web server to serve the web content.

Comparison with Electron, Tauri and more: https://github.com/Elanis/web-to-desktop-framework-compariso...

Re: Tauri vs. Electron – Real world application

#24
post #9

One thing I don't see mentioned is the horror of shipping for Windows. You'll need Windows to have the Edge runtime, which means you have to bundle it or install it as an add-on. People will complain about this, especially IT people, because Edge runtime runs some kind of stupid background service all the time for no clear reason. It's also brittle since you will have to constantly keep your installer up to date with…

Tauri has options to take care of that.

Microsoft's WebView2 has three distribution options: the "evergreen bootstrapper," the "evengreen standalone installer," and "fixed version" (where you embed a browser version in your installer).

https://developer.microsoft.com/en-us/microsoft-edge/webview...

Tauri supports all three of those mechanisms. If you choose to embed the browser directly in your installer, it adds 100MB+ to your installer size, but it's guaranteed to work anywhere. (They even support Windows 7.)

https://tauri.app/v1/guides/building/windows#webview2-instal...

Re: Tauri vs. Electron – Real world application

#25
post #12

I have been using Tauri to develop a Kubernetes IDE: https://github.com/nirops/yakiapp One additional thing from my experience, is if using Rust as a backend, the turnaround time for hot loading Rust changes is not trivial. This leads to longer times in building things vis-a-vis building in Electron with .ts/.js backend.

Mold linker cut down a lot of the build time when we were writing a tauri app, but the build times were still .. not my favorite.

Re: Tauri vs. Electron – Real world application

#26
post #17
post #10

Flutter desktop? Anyone tried it?

Flutter is really compelling, would love to be given a project using it based on what I've seen of the environment and tooling. Dart is nice too. In my recent evaluation though I decided to go with PWAs unless I really need native only APIs. Modern web APIs are decreasing the argument for native.

There is also Ionic if you need an extra push on what the Web APIs can do.

Re: Tauri vs. Electron – Real world application

#27
post #16

The 5th point in this article is what makes me end up using Electron most of the time. As much as I love Tauri (and Wails), WebView requires to make sure the application renders exactly the same across all platforms. Sure, Electron comes with its downsides like the article rightfully points out. But having a UI that renders and behaves exactly the same on all platforms (thanks to the version locked Chromium bundled i…

The downside of that control though is an application that's arguably a little too specifically targeted — it's understandable wanting to target the same engine but if your app breaks with different but reasonably recent versions of chromium I would say it's too brittle.

It also widens attack vectors considerably when your entire userbase is all on the same probably-outdated build of electron-bundled chromium.

Re: Tauri vs. Electron – Real world application

#28
Regarding point #4, I think the clear winner is Tauri. I'll clarify --

While writing in Node is great if you don't know Rust, your users are being shipped an entire Node runtime, which has size, memory, and security issues. So in this case Electron has a "better" DX completely at the cost of the user.

Tauri has JS/TS APIs, but if you need to do extensive backend work then it requires some learning at the benefit of your users. After learning Rust myself, I'd say it's the benefit of the developers too, but that's just my opinion. :)

Re: Tauri vs. Electron – Real world application

#29
post #16

The 5th point in this article is what makes me end up using Electron most of the time. As much as I love Tauri (and Wails), WebView requires to make sure the application renders exactly the same across all platforms. Sure, Electron comes with its downsides like the article rightfully points out. But having a UI that renders and behaves exactly the same on all platforms (thanks to the version locked Chromium bundled i…

The downside of that control though is an application that's arguably a little too specifically targeted — it's understandable wanting to target the same engine but if your app breaks with different but reasonably recent versions of chromium I would say it's too brittle. It also widens attack vectors considerably when your entire userbase is all on the same probably-outdated build of electron-bundled chromium.

System webviews on macOS aren’t updated after a certain point, so Tauri is not necessarily always a win re: your final point.

Re: Tauri vs. Electron – Real world application

#30
post #10

Flutter desktop? Anyone tried it?

I did a short evaluation a while back (while support for desktop/web was still in beta so much has probably changed), ended up going the PWA route. Developer experience was fantastic, code completion/debugging/documentation/compiling were all great and smooth experiences, Dart was easy to pick up quickly although some of the code generation stuff such as serialisation/deserialisation was a bit clunky. However the deciding factor at the time was that the end result felt very much like a mobile app forced into a desktop environment, things that users expected to have like copy+paste weren't there, keyboard shortcuts that users took for granted were a hassle to reimplement, the scrolling felt 'off' in a desktop environment and performance wise it could feel stuttery quite often.

I quite like the fundamental ideas behind Flutter (a lightweight GUI runtime that can produce consistent results across many platforms) so hoping these are already or on their way to being ironed out

Post reply on HN