That's the premise behind FUI-RS: a cross-platform, retained-mode UI framework built in Rust that treats the browser as a first-class target rather than a compatibility layer bolted on afterward.
One application model, multiple real targets:
π Web β compiled to WebAssembly
π₯οΈ Desktop β native apps on macOS, Windows & Linux
Under the hood, FUI-RS already brings together the pieces a real UI framework needs: controls, layouts, themes, events, dialogs, editable text, custom drawing, background workers, and host services β all built on a shared architecture so native and web don't diverge into two different codebases.
A few details worth noting for anyone evaluating it seriously:
β
Accessibility is a first-class concern β DOM/ARIA on web, NSAccessibility on macOS, UI Automation on Windows, AT-SPI on Linux
β
Tooling exists to scaffold and package projects (cargo-fui) rather than hand-rolling your build setup
β
It's genuinely retained-mode β build your UI once, mutate it from events and callbacks, rather than re-rendering on every frame
It's still early access β APIs may shift before 1.0 β which means there's real room to experiment, file issues, contribute, and shape where the ecosystem goes. Worth noting too: there's already a community-built Galaga-style space shooter running entirely on FUI-RS, which is a solid real-world stress test for a young framework.
π Explore the project: https://github.com/zion-sati/fui-rs
Rust developers β would you consider FUI-RS for your next cross-platform application? Curious what would need to be true for you to try it in production.
Top comments (7)
This is a really interesting approach to cross-platform development. Treating the browser as a first-class target while maintaining a shared Rust architecture for native desktop is especially compelling.
The retained-mode approach and accessibility support also make FUI-RS worth watching as it matures. Iβm curious to see how the ecosystem and real-world adoption develop before 1.0.
Thanks
FUI-RS is an interesting approach, especially treating WebAssembly and native desktop as first-class targets instead of maintaining separate UI architectures.
The accessibility strategy and retained-mode model also make it more compelling than simply wrapping a native app for the browser. For me, the key test would be how well it handles production-scale applications, ecosystem maturity, performance, and API stability as it moves toward 1.0.
Definitely a project worth watching and contributing to while the architecture is still evolving.
a strong direction for Rust. Having the browser as a first-class target rather than treating it as an afterthought could make cross-platform development much cleaner.
The retained-mode architecture is particularly interesting, but Iβd be curious to see how FUI-RS performs with larger applications and more complex accessibility requirements. If the API remains stable and the ecosystem grows, I can see this becoming a serious alternative for Rust developers who want native and WebAssembly targets from the same codebase.
This is genuinely impressive. The idea of building a Rust UI framework that targets both the browser and native desktop without relying on Electron or WebView is a very interesting direction.
The shared architecture, WebAssembly support, native targets, and strong focus on accessibility make this more than just an experimental UI concept. Iβd definitely recommend my Rust and cross-platform development colleagues take a look at FUI-RS and explore whatβs possible with it.
Looking forward to seeing how the framework and ecosystem evolve toward 1.0.
Some comments may only be visible to logged-in visitors. Sign in to view all comments.