← Back to context

Comment by cosmic_cheese

5 hours ago

Even if React is technically the most popular, that’s somewhat moot because most folks who might be interested in writing desktop apps with Rust probably aren’t coming from a web background, but instead from old school desktop UI frameworks (AppKit, win32, GTK, Qt, etc).

For this crowd, the barebones “bring your own everything” style of React and its analogues and contortions required to write apps with complex UIs in a declarative framework are not very appealing. OO imperative UI frameworks with a wide and deep chest of batteries-included widgets still come out on top for this particular use case. Minimal declarative frameworks are fine for light utilities but become progressively more cumbersome every step beyond that.

> most folks who might be interested in writing desktop apps with Rust probably aren’t coming from a web background, but instead from old school desktop UI frameworks

You'd be surprised. A lot of people migrating to desktop apps are people coming from a web background (this is after all by far the largest pool of UI developers) who want something more efficient than electron.

  • “More efficient” is relative. While tauri and dioxus can lower the install size, they’re not going to be meaningfully more efficient than electron for memory usage or speed since Chrome probably does better than the other frameworks, and consistently across OSes which dioxus and tauri struggle with since they are dependent on the host OS’s web implementation. Slint is interesting here but then it’s more rust and less web coding.

    • Oh, "more efficient" here isn't a refence to Tauri. It's a reference to the parent comment's mention of "(AppKit, win32, GTK, Qt, etc)".

      I work on a framework (Dioxus Native) which I think sits at an interesting intersection of "rust" and "web": it renders using HTML/CSS (custom implementation, not using a webview) but it uses Rust scripting instead of JavaScript.