HotOrNot moving to Rust frontend

A pretty interesting move from HotOrNot developers - Deciding to create their frontend in Rust. That’s why I’ve decided to post it here since devs aren’t probably following governance proposals that much. We have seen React, Vue, and Svelte, but not sure if there is a Rust one yet.

Just wondering what are the pros and cons. It will be interesting to know which popular sites do that. I’ve seen some apps use wasms for video editing, but their template engine/site was probably in JS. Can Rust FW easily turn into a mobile app? Will it work on most devices? Are there benchmarks showing significant performance gains? How experimental are Rust frameworks? Do they have enough libraries & adoption? Just some questions boggling my mind.

From the current proposal https://dashboard.internetcomputer.org/sns/67bll-riaaa-aaaaq-aaauq-cai/proposal/32

Based on our research, we have decided to build the entire platform on RUST, a programming language that offers high performance, reliability, and memory efficiency. This would make the platform more nimble, responsive, and better performing than the current JavaScript-based interface. Hence, we are rewriting the entire platform in RUST.

4 Likes

How exactly would it make the site more performant? Afaik the DOM is mostly the bottleneck?

2 Likes

I’ve never seen any evidence of a Rust frontend being automatically more performant than a well-coded JS frontend in the browser yet, due to the overhead of wasm-bindgen. However, some big players such as Google Docs have switched to canvas-based rendering, so it can be done at scale today.

The biggest challenge is that if you abandon the DOM, you lose all of the accessibility features that are built into the browser. It then becomes the responsibility of the developer to ensure that all your features are accessible for vision and motor-impaired users, and I don’t believe the rust tooling available today is great for that

3 Likes

Performance is never a reason to rewrite the front end. Honestly this seems like a bad move overall but then again I am only a voice in the void.

1 Like

Seems like there are some frameworks out there like https://dioxuslabs.com/ that allow you to target web and mobile from a single codebase. Not sure how great it works in practice, but it would be a welcome alternative to having to maintain both React & React Native components, or use something entirely different like Flutter.

Maybe there’s a mobile Hot or Not app on the horizon?