Tokio releases Topcoat: A batteries-included full-stack Rust framework
The Tokio team has released Topcoat 0.9, a server-rendered full-stack Rust web framework with cross-compiled reactivity, file-based routing, a Node-free Tailwind pipeline, and vendored UI components.
The Tokio team has published Topcoat, a modular full-stack web framework for Rust, as a public GitHub repository at version 0.9, alongside blog posts outlining its direction. Topcoat aims to bring Rails- or Django-style productivity to Rust developers through server rendering, declarative reactivity and vendored components, so teams already invested in Rust for infrastructure or performance-critical work can build web applications without adopting a separate language or stack.
Topcoat targets server-rendered applications. It adds reactivity through cross-compiled Rust expressions instead of WebAssembly, so teams can build browser-based, database-driven applications without shipping a client-side bundle.
The framework includes a view! macro for mixing HTML with Rust control flow, module-based routing that Topcoat infers from the project’s file tree, an asset pipeline with content-hashed URLs, and a Tailwind integration that runs without Node.js. It also ties into Toasty, the async ORM from the same ecosystem, for migrations and database access within one Rust workspace.
The central idea is the $(…) expression. Developers write ordinary Rust fragments that Topcoat type-checks. Topcoat evaluates them on the server for the initial render and translates them to JavaScript, so the same logic runs in the browser without a WASM bundle or a separate client build step. When an update needs the server, a component marked #[shard] re-renders on the server whenever one of its $(…) arguments changes; Topcoat swaps the new HTML into the page. That gives reactive updates without a client-side router.
This model places Topcoat closer to HTMX, Datastar and Phoenix LiveView than to React or SolidJS. Within Rust, it sits beside Leptos and Dioxus, both of which compile Rust to WebAssembly and ship an upfront WASM bundle. It overlaps with Loco.rs and Cot, which pursue Django-style productivity through ORMs and admin panels, though neither matches Topcoat’s cross-compiled reactivity.
Topcoat UI, a component library inspired by shadcn/ui, ships with the framework. The topcoat ui command vendors components into a project, so teams edit the code for their own design and behavior instead of wrapping a fixed package.
The project drew attention on Hacker News. “Oh man I’d love a nice full stack framework in Rust! Django, Laravel, and Rails are very neat. I used to be a micro framework kind of guy, but having everything integrated is more and more appealing over the last few years. This would take a long time to get feature complete with the core of those big full stack frameworks, but I’m rooting for it! Getting to use the Rust type system with a full stack web framework sounds incredible,” one commenter wrote. “will possibly gain outsized adoption in the community based on name recognition rather than merit,” Hobofan wrote. frio argued the Rust ecosystem still lacks a true Django equivalent with admin, authentication and migrations built in.
Tokio creator Carl Lerche said at ScyllaDB’s P99 2026 conference that Topcoat is not aimed at Figma-scale applications. It targets, in his words, the “run-of-the-mill, browser-based, database-driven applications” that make up most of the web.
Topcoat ships on a 0.x release cadence, so it offers no long-term stability guarantee. The team has committed to release notes for every version and migration guidance where needed. The roadmap tracks authentication, background jobs, static export and tighter Toasty integration as near-term work in GitHub issue 104.
New projects can follow the Getting started guide or the manual setup instructions. Tokio publishes Topcoat on crates.io under an MIT licence.