TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Tauri 1.0 – Electron Alternative Powered by Rust

715 pointsby Uninenalmost 3 years ago

45 comments

dangalmost 3 years ago
<i>Tauri – Electron alternative written in Rust</i> - <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=29807022" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=29807022</a> - Jan 2022 (419 comments)<p>(The cutoff for dupes is a year or so: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;newsfaq.html" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;newsfaq.html</a>)
评论 #31768206 未加载
评论 #31776943 未加载
评论 #31775393 未加载
评论 #31772718 未加载
lewisjoealmost 3 years ago
In my curious search for lighter Electron alternatives to implement Zoho Writer&#x27;s (<a href="https:&#x2F;&#x2F;writer.zoho.com" rel="nofollow">https:&#x2F;&#x2F;writer.zoho.com</a>) desktop app: I found Sciter[1]<p>It supports multiplatform app development with HTML&#x2F;JS&#x2F;CSS and the entire engine&#x27;s runtime is just about 5MB which is unbelievably small!<p>I further analysed how this was possible, what I found was beyond fascinating.<p>1. The author has wrote a compiler that supports JS with useful extensions like classes and fancy stuff, even before ES6 came into existence.<p>2. He had built his own layouting engine that understands HTML and CSS 3.0<p>Basically he&#x27;s built a custom browser engine, but custom tailored for writing multi-platform apps. So it&#x27;s super-fast without as much memory taxes. It&#x27;s not backed by a BigCo or a huge community (I guess) and I&#x27;m not sure whether I&#x27;ll pick it for a business critical app. But the way it&#x27;s architected seems far superior than the shortcut approaches that Electron or most other alternatives take.<p>The project is not even new. It&#x27;s more than a decade old which itself is amazing.<p>[1] <a href="https:&#x2F;&#x2F;sciter.com" rel="nofollow">https:&#x2F;&#x2F;sciter.com</a>
评论 #31765153 未加载
评论 #31765126 未加载
评论 #31766203 未加载
评论 #31765593 未加载
评论 #31764929 未加载
评论 #31765801 未加载
flohofwoealmost 3 years ago
Not to rain on the parade, but:<p>- What&#x27;s the point of mentioning Rust when the heavylifting is done by the system&#x27;s webview widget, and applications are written in HTML&#x2F;CSS&#x2F;JS, just as in Electron?<p>- Isn&#x27;t the whole point of Electron to have version&#x2F;feature stability for the browser APIs by bundling a specific Chromium runtime? Without this requirement, it was also trivial before Electron showed up to write a small native wrapper application around the system-provided webview widget.
评论 #31766283 未加载
评论 #31764965 未加载
评论 #31764750 未加载
评论 #31765235 未加载
评论 #31764725 未加载
评论 #31764788 未加载
评论 #31765617 未加载
评论 #31773448 未加载
评论 #31765980 未加载
评论 #31765978 未加载
评论 #31765816 未加载
Uninenalmost 3 years ago
I find it fresh and positive that Tauri developers take security very seriously. Before this 1.0 release they ordered a full security audit for the codebase and published the report ( <a href="https:&#x2F;&#x2F;github.com&#x2F;tauri-apps&#x2F;tauri&#x2F;blob&#x2F;next&#x2F;audits&#x2F;Radically_Open_Security-v1-report.pdf" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;tauri-apps&#x2F;tauri&#x2F;blob&#x2F;next&#x2F;audits&#x2F;Radical...</a> ).<p>The project encouraged me to better my own workflows too, as even the awesome-tauri repo requires signed commits in the PR template :) ( <a href="https:&#x2F;&#x2F;github.com&#x2F;tauri-apps&#x2F;awesome-tauri&#x2F;blob&#x2F;dev&#x2F;.github&#x2F;pull_request_template.md" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;tauri-apps&#x2F;awesome-tauri&#x2F;blob&#x2F;dev&#x2F;.github...</a> )
capablewebalmost 3 years ago
Tauri is such a breath of fresh air for a web developer like me! I picked up Rust because of it, and was easier than I thought (I&#x27;ve read lots of &quot;Rust is hard&quot; articles).<p>The application I wrote is a Hacker News client with focus on offline reading and listing comments in threads sorted by time and flat, instead of trees sorted by score (which incidentally, also works as a web application which is deployed here: <a href="https:&#x2F;&#x2F;ditzes.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;ditzes.com&#x2F;</a>).<p>I found it helpful when I&#x27;m traveling but still want to read discussions, useful for following along threads that are actively being discussed (this submission can be seen at <a href="https:&#x2F;&#x2F;ditzes.com&#x2F;item&#x2F;31764015" rel="nofollow">https:&#x2F;&#x2F;ditzes.com&#x2F;item&#x2F;31764015</a> for example) and also useful when using HN comments as reference to something I&#x27;m building. Guess I&#x27;m also pretty proud that the client is VERY fast, loading 1000 comments in something like 1s (because of the caching). Like this thread for the Coinbase layoffs: <a href="https:&#x2F;&#x2F;ditzes.com&#x2F;item&#x2F;31742590" rel="nofollow">https:&#x2F;&#x2F;ditzes.com&#x2F;item&#x2F;31742590</a> (1001 comments)<p>The Tauri application currently works with 99% of the features of Ditzes, but the mouse &quot;back&quot; button doesn&#x27;t actually navigate the internal browser back in history with Tauri yet, so I haven&#x27;t done a &quot;Show HN&quot; yet as I consider that a essential feature of Ditzes (for following along threads via the &quot;View&quot; link) before &quot;launching&quot; it.<p>The Tauri-part of the source can be found here: <a href="https:&#x2F;&#x2F;codeberg.org&#x2F;ditzes&#x2F;ditzes&#x2F;src&#x2F;branch&#x2F;master&#x2F;src-tauri" rel="nofollow">https:&#x2F;&#x2F;codeberg.org&#x2F;ditzes&#x2F;ditzes&#x2F;src&#x2F;branch&#x2F;master&#x2F;src-tau...</a><p>Overall, besides the extremely long compile times, Tauri has a been a pleasure to develop with, and I&#x27;d definitively use it over Electron in the future. Really looking forward to mobile support as well, as then I&#x27;ll finally have a comfortable and offline-capable HN client for my cellphone.
评论 #31764543 未加载
评论 #31764440 未加载
rathbomaalmost 3 years ago
This looks fantastic, and Electron needs some competition.<p>That said, here&#x27;s my set of hesitations as an Electron app developer (Beekeeper Studio - beekeeperstudio.io).<p>1. With Electron it&#x27;s nice to be able to lock the browser implementation across OSs. I&#x27;d have some pause about having to support arbitrary Webview implementations. It makes testing so much harder.<p>2. It&#x27;s really really nice to be able to code-share between UI code and app backend code. In Electron everything is JS, so you can use the same codebase for both components. With Tauri it requires two languages and two sets of packages.<p><pre><code> - One example of this is an ORM for a SQLite database. I need to load some settings before the UI renders, in Electron this is the same ORM code. </code></pre> 3. The only Linux build is a DEB.<p>4. Smaller community - desktop apps are a total PITA to debug, it helps that Electron builds have been tested at length by companies like Microsoft.
评论 #31769670 未加载
j1eloalmost 3 years ago
This seems a very interesting addition to the Rust ecosystem. I wonder how much traction it will get, though.<p>Some days ago there was an HN thread about Rust, conversing about the steep learning curve of Rust. The conclusion frequently is that maybe Rust is great for financial systems, kernels, rendering engines, media processors, etc... but just not necessarily the best tool for the job when there is no pressing need to avoid GC, and&#x2F;or to squeeze the maximum performance while at the same time maintaining memory correctness. Which, on the other hand, tends to be the <i>immense majority</i> of application development out there...<p>So Tauri seems to me has a similar issue than the Qt Framework (built on and for C++): its adoption as an Electron alternative might not be as much as it deserves, because of the difficult to learn programming language that is behind it.<p>Thoughts?<p>EDIT: I know Tauri is just a WebView component, but programming in Rust still seems to be an important part of developing apps with it (it is even prominently featured in the 100 seconds video of the entry)
评论 #31766715 未加载
评论 #31765200 未加载
评论 #31764743 未加载
评论 #31764710 未加载
评论 #31766571 未加载
lucasyvasalmost 3 years ago
For anyone not on board because of how the WebViews work, or that it uses WebViews at all, the roadmap has other renderers to be explored. I believe the majority of the Tauri framework is decoupled from &quot;web&quot; and it&#x27;s merely supported first - likely through popularity.<p>When WebView2 goes multiplatform, you might even be able to use it on every platform (if you like web, but want a consistent browser engine on each platform)<p>I&#x27;m more interested in where Tauri will go next in terms of support - not where it is on day 1.
评论 #31767348 未加载
评论 #31776545 未加载
galaxyLogicalmost 3 years ago
An alternative to Electron I like is Vercel Pkg <a href="https:&#x2F;&#x2F;github.com&#x2F;vercel&#x2F;pkg" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;vercel&#x2F;pkg</a> .<p>You write a server in Node.js, compile it to an exe with Vercel Pkg and users run the exe on their local machine and use it with their browser.<p>Instead of running an app &quot;in the cloud&quot; they run it on the server on their machine. But the server could easily also be moved to the cloud as well.<p>Using a browser to connect to an app running on your local machine has the nice feature that you can open any number of browser-views on it, looking at the app and your data and tools from multiple viewpoints. Since it is local they are the only user and don&#x27;t need to login or &quot;keep a session&quot; and can thus interact with the app in multiple ways in parallel.<p>I don&#x27;t need to design in a feature that allows users to &quot;open a new window&quot;. That is handled by the browser. Open a new tab to the same or different (bookmarked) url.<p>Plus there is a benefit to coding both the server and the client in the same language.
评论 #31767432 未加载
japanuspusalmost 3 years ago
For anyone coming from the rust side and just looking for a cross-platform rust frontend framework: although not covered in any details by the docs, you can cut out all the web stuff and run everything from cargo.<p>I have a small `hello-world` example of a rust-only Tauri application at <a href="https:&#x2F;&#x2F;github.com&#x2F;Japanuspus&#x2F;tauri-from-rust" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;Japanuspus&#x2F;tauri-from-rust</a>
weneralmost 3 years ago
Here is another one <a href="https:&#x2F;&#x2F;github.com&#x2F;wailsapp&#x2F;wails" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;wailsapp&#x2F;wails</a> powered by Golang, but both of tauri and wails do not support BrowserView like feature in Electron, which means you can not build a brave browser on top of them.<p>Depends on your skill set, wails maybe better, think building a UI based tailscale app, just make the embed web part display directly instead behind a http.Server with extra 3-5 MB
评论 #31766035 未加载
评论 #31765540 未加载
crabbygrabbyalmost 3 years ago
Been using tauri since it was in alpha for hobby project. Experience overall is pretty good. You really can call backend rust from js, in a lightweight browser window.<p>It is probably the most approachable technology for me for making desktop apps these days. Much leaner than electron, like it says on the tin.
petercooperalmost 3 years ago
Coincidentally I enjoyed this article yesterday about using Tauri and React to quickly build a desktop app: <a href="https:&#x2F;&#x2F;betterprogramming.pub&#x2F;how-i-created-the-focus-app-using-react-and-rust-fd8fd072d1a7" rel="nofollow">https:&#x2F;&#x2F;betterprogramming.pub&#x2F;how-i-created-the-focus-app-us...</a>
jeremychonealmost 3 years ago
Tauri is very well designed, from an app model to its component parts (wry, tao). In short, it’s a platform that allows writing Rust as the backend and use of the OS webview. So light and fast.<p>I think and hope that many new desktop apps, even from the new big player, will be done in Tauri. I plan to use it for some of our future apps.<p>I know mobile is a whole other beast, but I hope Tauri can also crack this one up. That would be amazing.<p>Tauri rocks!
评论 #31766069 未加载
AndrianValmost 3 years ago
I&#x27;ve always felt Tauri was too early to be a viable electron competitor, but now that I&#x27;ve seen it used in a huge project (Spacedrive), I think I might reconsider.
评论 #31766141 未加载
hdjjhhvvhgaalmost 3 years ago
The other lightweight alternative to Electron is Neutralino.js:<p><a href="https:&#x2F;&#x2F;neutralino.js.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;neutralino.js.org&#x2F;</a>
评论 #31764721 未加载
评论 #31765125 未加载
评论 #31765014 未加载
zeandcodealmost 3 years ago
Whatever their opinions on this project. I&#x27;m pretty much like it when start to create a small project, it&#x27;s very light in terms of memory usage, also the size of the compiled binary is way smaller than electron.
lynndotpyalmost 3 years ago
That 100 second video was really very well done and convincing. I shouldn&#x27;t have watched it on break because now I want to do go home and do something with Tauri :)
评论 #31768098 未加载
akmarinovalmost 3 years ago
Shal&#x27;kek nem&#x27;ron
评论 #31764368 未加载
sourabhvalmost 3 years ago
I would honestly prefer flutter instead of relying on system web view and all of its inconsistencies
评论 #31765095 未加载
评论 #31766365 未加载
MuffinFlavoredalmost 3 years ago
<a href="https:&#x2F;&#x2F;github.com&#x2F;tauri-apps&#x2F;wry" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;tauri-apps&#x2F;wry</a><p>This rocks, especially with some IPC between the &quot;native&quot; things like filesystem + TCP sockets -&gt; JavaScript &quot;bridge&quot;.
smdyc1almost 3 years ago
Name inspired by Stargate?
vegai_almost 3 years ago
What is the system webview on Linux, where such a thing doesn&#x27;t exactly universally exist?
评论 #31765458 未加载
tensoralmost 3 years ago
A similar project that I&#x27;m using is <a href="https:&#x2F;&#x2F;wails.io" rel="nofollow">https:&#x2F;&#x2F;wails.io</a>. It uses the native system webview and the backend is in Go. You can cross compile to Windows, Linux, and Mac.
encryptluks2almost 3 years ago
Doesn&#x27;t the browser native messaging feature already provide the ability to call native applications and create a backend language API? I guess I don&#x27;t understand the need for every app to basically have its own browser engine, no matter how &quot;lite&quot;, when I can already develop apps with Chromium that use native messaging.<p>I&#x27;d rather see a unified solution which pretty much exists then to have a bunch of alternatives that provide no greater benefits overall from what I can tell.
apialmost 3 years ago
I wonder if they&#x27;ve gotten around the horror of Windows distribution for native webview based apps?<p>The usual problem is that you have to either use an antiquated IE based webview on Windows or install the Microsoft Edge runtime. The latter is painful to bundle and some people don&#x27;t like it, especially enterprisey IT departments who consider it &quot;another thing&quot; they have to approve instead of just a part of the app since it&#x27;s a separate OS component.
评论 #31764865 未加载
评论 #31766342 未加载
sva_almost 3 years ago
Sadly mobile support is still far off on the horizon it seems.
评论 #31764356 未加载
IceHegelalmost 3 years ago
I tried to use Tauri for a personal project back in January and it was missing some basic features like windows without a topbar.<p>Have things matured meaningfully since then?
mattlondonalmost 3 years ago
Are there any good HTML ui component libraries that people are aware of?<p>Not just styling buttons with CSS, but actual components like e.g. tab-strips?
评论 #31765124 未加载
评论 #31765243 未加载
password4321almost 3 years ago
Cmd+F accessibility: 0&#x2F;0 - both this discussion and their site search. :(<p>One issue from 2019: &quot;Tracking : accessibility (a11y)&quot; <a href="https:&#x2F;&#x2F;github.com&#x2F;tauri-apps&#x2F;tauri&#x2F;issues&#x2F;207" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;tauri-apps&#x2F;tauri&#x2F;issues&#x2F;207</a>
synergy20almost 3 years ago
In an ideal world, the browser could add a desktop or smartphone mode running in a separate process with web surfing(and others like cookies etc) optionally turned off, then it becomes a true universal GUI platform.
CMCDragonkaialmost 3 years ago
It&#x27;s possible to embed nodejs (or V8 or demo) in a Rust binary. So perhaps we could embed nodejs into the rust backend and just run a nodejs app.
aitchnyualmost 3 years ago
Why does Tauri say &quot;faster&quot; or &quot;blazing fast&quot;? I think it has same limitations as Electron, or did I miss something?
评论 #31765066 未加载
评论 #31764794 未加载
评论 #31764814 未加载
bennyp101almost 3 years ago
Awesome, I&#x27;ve been waiting for a 1.0 release to start playing around (I know its been fairly stable anyway, but still)
knowsuchagencyalmost 3 years ago
Looks great but I can&#x27;t find any references to how to implement a sidecar with the new documentation
评论 #31771961 未加载
k__almost 3 years ago
If I get this correctly, Tauri is neither about performance nor size, but about security?
评论 #31764715 未加载
评论 #31764639 未加载
productceoalmost 3 years ago
Is this a substitute for Flutter? (After mobile support ships)
评论 #31764603 未加载
评论 #31764621 未加载
showmeademoalmost 3 years ago
I had a look at the tauri site a few weeks ago but could not find a single screenshot or demo app to see what it looked like.<p>It would be good to see what it actually looks like before investing in time to build something.
评论 #31766207 未加载
评论 #31765147 未加载
SeasonalEnnuialmost 3 years ago
Does anyone else find that the text-to-speech on the &quot;Tauri in 100 Seconds&quot; video sounds very unnatural?<p>Tauri seems like a step in the right direction so will be giving it a go.
评论 #31764380 未加载
评论 #31765041 未加载
billfruitalmost 3 years ago
Is there something similar for C++.
nachtigallalmost 3 years ago
It still uses node.js, right? Since it is new and for the future, why not choosing deno?
评论 #31764491 未加载
评论 #31764557 未加载
评论 #31764546 未加载
评论 #31764532 未加载
newbieuseralmost 3 years ago
It would be really nice if they had their own app store or package manager.
评论 #31766190 未加载
UmbertoNoEcoalmost 3 years ago
I like it,but even a trivial app becomes a huge +5GB folder in development. The dependencies folder alone will make a node project blush + all the stuff generated when compiling&#x2F;building. I love to have several apps to work on them concurrently but I wont reserve 50 Gb of my already small SSD for this stuff.
jbverschooralmost 3 years ago
5 clocks later too check if it’s also webviews. It is, so I stopped reading
torginusalmost 3 years ago
This is &#x27;powered by Rust&#x27; the same way my gas car with electric windows is &#x27;powered by electricity&#x27;
评论 #31766344 未加载