2 ms·
Seems like the main differentiator for Tauri is building plugins and features in Rust, no? Otherwise the core architecture will be the same as Capacitor and oth
by yesimahuman 3y ago
Seems like the main differentiator for Tauri is building plugins and features in Rust, no? Otherwise the core architecture will be the same as Capacitor and other projects as that is dictated by the SDK support on each platform (especially iOS).
- usrusr 3y agoI'd consider Tauri more a tool for web-UI on desktop that also happens to be usable on mobile than a tool to unify iOS and Android. Certainly a lot of overlap.
- 01HNNWZ0MV43FF 3y agoYeah. I am about 10 years behind on web dev and so I'm working on a Tauri app that is 99% Rust with just Tauri to draw some GUI controls. Works pretty well. We considered these other frameworks and decided not to pursue them: - Qt - Not aware of good Rust bindings, difficult to deploy without like 10 DLLs - FLTK - Good Rust bindings but difficult to style and was missing some features we want - GTK - Assumed it doesn't build / deploy easily on Windows - Win32 - Hoo boy we tried. It would be tiny and fast as hell, but riddled with unsafe blocks, and the documentation is just terrible. - WPF / XAML - Not aware of Rust bindings - Flutter, WinUI, etc. - Too new - egui, iced, etc. - Too hard to style, don't need the performance benefits. If I was making a video editor I'd take egui over Tauri since Tauri can't share memory between Rust and JS. So Tauri won out on these advantages: - Built-in bundling for NSIS and MSI makes Windows deployments painless - Can hire any random webdev to fix up the HTML/CSS/JS when needed - No problem of binding - It's already made to work well with Rust I did run into a few caveats, the biggest of which is that Tauri programs cannot return from main. Their event loop doesn't allow it, somehow. Every Tauri program just calls `std::process::exit` to quit. There is probably a very good soundness reason for this (e.g. Windows would flip a turd if you exited one GUI event loop and started another?) but it's frustrating since other toolkits do let you return from main. Also the Windows clean builds are incredibly slow. It builds faster on Linux but it does not build _fast_ fast anywhere. Incremental builds are bearable.