Live data from Hacker News

Tauri: An Electron alternative written in Rust

tauri.studio

321–330 of 438 posts

Re: Tauri: An Electron alternative written in Rust

#321

Earlier quoted context omitted.

I've had to say this a fair few times here, but I'll keep saying it. IEDevToolbar, which Firebug was pretty much a clone of, came out a year before Firebug. And it took Firebug years to catch up in feature parity, as far as I remember. So, firebug didn't make it the dev tool of choice. We all just hated microsoft. And tabbed browsing was great.

I was young and dogmatic, so I did admittedly despise Microsoft back then. I can't recall I ever heard of IEDevToolbar, though. Did it really feature the DOM tree view where you could do CSS manipulation? I always had the impression that it was a Firebug invention, but I could be wrong about that.

The DOM inspector view in Firefox predates Firebug by years. My memory might be a bit shaky, but it may even have existed in Mozilla Web Browser?

It really looked like a 'DOM tree/tree of Javascript classes' though, not really like the inspector we have today.

Re: Tauri: An Electron alternative written in Rust

#322

Earlier quoted context omitted.

That's fine for someone who already keeps current with front-end stuff, but someone who is a desktop app developer is more likely to just go native than try to make a desktop app that tracks 3+ browser engines of wildly varying versions (luckily 7 is out of support now, but it still might be desired to support for some desktop apps in which case now you have IE to deal with). Electron gives the promise of total code…

> Electron gives the promise of total code re-use across platforms which is what makes web technologies more suitable for desktop apps. I am not sure what the point is of Electron: a shitty-resource hungry app that literally is a wrapped web-app. Instead of writing platform specific apps that leverage the power and capabilities of those platforms, we get a jack of all trades and master of none. Electron is a business…

> Instead of writing platform specific apps

You've answered your own question as to why people write then.

> What value does electron add to the user?

It adds a lot of value to Linux and to a lesser extent Mac users: before a electron a lot of apps didn't have a version for these platform at all.

Re: Tauri: An Electron alternative written in Rust

#323
post #305

Earlier quoted context omitted.

Tauri also uses MSHTML (Internet Explorer) on Windows. And there's no way I'm going back to developing for that.

Isn't IE just using Chrome now? Or do you mean support for old IE?

Their browser is. But Windows' webview is still the IE11 engine.

Re: Tauri: An Electron alternative written in Rust

#324

In what sense it is an alternative to ElectronJS? If size than not that much as Tauri is based on Node.JS that is 56 Mb executable by itself. Yet Node.JS is pure C/C++ code. It is not clear what does "written in Rust" mean at all and what benefits Rust provides in that setup. For the comparison: my scapp.js.exe ( https://github.com/c-smile/sciter-js-sdk#demos ) that is Sciter.JS packaged as standalone exe without dep…

Tauri apps don't use the NodeJS runtime. You have to write your app's backend in Rust. Like you said, the NodeJS runtime is tens of MB; if you look at their demo app you'll see that it doesn't even break 3MB.

Re: Tauri: An Electron alternative written in Rust

#325

This kind of makes me think... is there room for a much more stripped down version of Chromium that is suitable for lower memory footprint? Or is this impossible? It looks like Tauri uses system webviews, which use a lot less memory, but the burden is then on the developer to make sure that they build essentially 3 (maybe more) UI's on platforms that might change under their feet. That's why the Electron approach is…

Have you seen how Sciter.JS has been developing https://github.com/c-smile/sciter-js-sdk There are a few working examples, and they have dramatically lower memory footprint and are quicker to start than full fat browsers.

I've performed a couple experiments remaking Electron apps using Sciter.

My first target was https://github.com/AkashRajpurohit/clipper, a neat little clipboard manager. The owner was gratious enough to officially list my project under the "Clones" section of his readme =D The result was a 6mb file, compared to the original 165mb Electron app.

The second attempt was https://github.com/girkovarpa/temps-lite, an aesthetically-pleasing weather app which was motivated largely by the fact that the original was broken and abandoned yet still had people who wanted to use it. According to the open issues and forks trying to resurrect it, anyway. The file size savings were similar to the former, and they start virtually instantly. Unlike the Electron apps which have a bit of delay and then a blank window before they finish starting up.

Re: Tauri: An Electron alternative written in Rust

#326
I've been following this project for a while, it's super exciting. Unfortunately, progress seems to have slowed somewhat in the last 6 months.

Loading Node in the renderer is a broken pattern that is full of compatibility issues and security vulnerabilities. Electron have come to realise this too and seem to be pushing towards ContextIsolation and explicitly defined bridges between the "backend" node process and the renderer.

Re: Tauri: An Electron alternative written in Rust

#327

Question: Why do we need Electron alternatives? Why do we need to develop applications that need a bundled browser to run? Why can't we just use GTK/Qt?

Have you tried developing relatively complex UI with QT? You need to hire a team of engineers and spend man-years of effort to build custom UX that in the web / Electron can be replicated with an npm install fancy-library. Yes, I hate Electron, but the alternative is not QT; it's something like Sciter.JS with real Web API compatibility (or perhaps a stripped down WebKit2 which is much less resource-heavy).

I am convinced that the sort of Web API compatibility so many people demand is only a few native libraries away. I would like to start experimenting in this area but I can only get rust-sciter DLLs working with "vanilla" Sciter and not Sciter.js, and I don't want to use other languages.

Re: Tauri: An Electron alternative written in Rust

#328
post #305

Earlier quoted context omitted.

Tauri also uses MSHTML (Internet Explorer) on Windows. And there's no way I'm going back to developing for that.

Isn't IE just using Chrome now? Or do you mean support for old IE?

No, IE is still the same. But Edge has moved to Chromium.

Re: Tauri: An Electron alternative written in Rust

#329
post #241
post #167

Earlier quoted context omitted.

What we need is a subset of HTML features that are known to work across all major browser. From Firefox, Safari /WebKit on other MacOS, and Chrome. Or something that compiles to the compatible HTML code for those platform with 100% accuracy. Unless that happens, you are dealing with godzillion number of edge cases in hundreds of different System Browser. But even if such language or subset of feature exist, it will s…

What we need is a subset of HTML features that are known to work across all major browser. From Firefox, Safari /WebKit on other MacOS, and Chrome. What, you mean like standards? Web standards?

The problem is not all current Web Standards are supported across all System Browsers. So the Subset is meant as lowest common factor. How do get anything to work when you have customers using IE?

Re: Tauri: An Electron alternative written in Rust

#330

In what sense it is an alternative to ElectronJS? If size than not that much as Tauri is based on Node.JS that is 56 Mb executable by itself. Yet Node.JS is pure C/C++ code. It is not clear what does "written in Rust" mean at all and what benefits Rust provides in that setup. For the comparison: my scapp.js.exe ( https://github.com/c-smile/sciter-js-sdk#demos ) that is Sciter.JS packaged as standalone exe without dep…

If you look at the website you will see that it is not bundling Node.js, apps can be as small as less than 1mb. It is written in rust (because the backend is, also it will integrate with Deno in future which in Rust). It is still in development, but if you look at the website you will see the features that it provides or will provide (such as system integration) and the value that it adds.
Post reply on HN