
There is a super-new Rust Web Framework in town, and it's name is Topcoat Rust is already a solid...
There is a super-new Rust Web Framework in town, and it's name is Topcoat
Rust is already a solid choice for backend development, especially with frameworks like Axum. But building a complete web application in Rust still means connecting many different libraries yourself. That is the problem Topcoat wants to solve.
Topcoat is a new batteries-included framework created by Carl Lerche and Julien Scholz for building full-stack, reactive web applications entirely in Rust.
Announcement: https://tokio.rs/blog/2026-07-22-announcing-topcoat GitHub: https://github.com/tokio-rs/topcoat
Prefer a video version? I discussed Topcoat directly with Carl Lerche, the creator of Tokio, and Julien Scholz, the creator of Topcoat.
{% embed https://youtu.be/iP9iL4dkiB0 %}
Topcoat is fully server-rendered.
Your components can be asynchronous, access the database, load application state, and check user permissions directly on the server.
A minimal application looks like this:
#[tokio::main]
async fn main() {
topcoat::start(Router::builder().discover().build())
.await
.unwrap();
}
#[page("/")]
async fn home() -> Result {
view! {
<!DOCTYPE html>
<html>
<head>
<title>"Hello world"</title>
topcoat::dev::script()
</head>
<body>
<h1>"Hello from Topcoat!"</h1>
</body>
</html>
}
}
Frameworks like Leptos and Dioxus can run Rust in the browser through WebAssembly.
Topcoat takes a different route.
It renders the application on the server and adds client-side reactivity through small reactive instructions. It can also re-render parts of the UI on the server and replace only the section that changed.
The approach is closer to HTMX or Hotwire than to a traditional React-style SPA.
This makes Topcoat especially interesting for:
For highly interactive browser applications, a client-heavy framework may still be a better fit.
No. Axum is still a great choice for APIs and lower-level HTTP endpoints.
Topcoat works at a higher level and tries to remove the boilerplate between routing, components, HTML rendering, assets, and reactive updates.
A project could easily use both.
Rust already has many excellent libraries, but it has been missing a more opinionated, integrated experience similar to Rails, Laravel, or Next.js.
Topcoat is moving in that direction with:
It is still early, and the team is open about the current limitations of its reactivity system.
Still, this feels like an important step for Rust web development.
Topcoat is not here to replace every existing framework. It is trying to make it much easier to build complete, server-rendered applications without leaving Rust.
Would you try it for your next internal tool or dashboard?
Watch the full discussion with Carl Lerche and Julien Scholz:
{% embed https://youtu.be/iP9iL4dkiB0 %}
aiHow nb2lite-skill-agy packages Google's gemini-3.1-flash-lite-image as an Antigravity skill + MCP server — with multi-turn stateful edits, a simple install guide, and a dogfooded cover image.
cloudGoogle just made multi-region Cloud Run significantly easier. Here is the full picture; what changed,...
aiHow nb2lite-skill-codex packages Google's gemini-3.1-flash-lite-image as a Codex skill + MCP server — with Codex-native install paths, stateful edits, and a dogfooded cover.
aiHow omni-skill-agy packages Google's gemini-omni-flash-preview as an Antigravity CLI skill + MCP server — what Omni Flash actually does, a field guide to all eight tool calls, multi-turn stateful edits, an idiot-proof install guide, and a one-tool-call path to YouTube.
omnivideoTeaching Claude Code to Direct: A Stateful Video-Editing Skill Built on Gemini’s...
aiPain Point: One Chinese Business Card is Actually Two Business Cards Business cards in...
Workflows from the Neura Market marketplace related to this CoPilot resource