After a year running Dioxus fullstack in production for Segg Wat, a SaaS feedback tool, the Rust code became the most boring part — exactly as intended. The stack uses Dioxus 0.7 with twelve crates depending on dioxus, rendering server-side, running backend functions, and compiling to WebAssembly. The biggest win: one language everywhere.
Database queries, server functions, and UI components share types seamlessly — rename a field and cargo check catches all breaks across the stack. No TypeScript drift, no OpenAPI regeneration. Refactoring happens fearlessly, even late at night.
The "boring" reliability means fewer catastrophic bugs like "undefined is not a function" ever reach users. But compile times are brutal: GitHub's 2-core runners take 90 minutes for a release build, with the WASM target alone needing 22 minutes. Clippy even OOM-killed on the 7GB runner.
The fix required a 10GB swapfile and limiting jobs. CI costs became unsustainable, so builds moved to release tags or manual triggers. Caching with Swatinem/rust-cache helps but requires manual cache-warming after dependency bumps.
Source: Hacker News · Summarized by HeadlinesBriefing