Trying Topcoat – A New Full-Stack Reactive Framework for Rust

What is Topcoat?

Topcoat is a very new (announced July 22, 2026) full-stack web framework for Rust created by the Tokio team. It focuses on server-rendered HTML with light client-side reactivity, without using WebAssembly.

Steps We Followed

  1. Created a new project:Bashcargo new topcoat_hello cd topcoat_hello
  2. Added dependencies:Bashcargo add topcoat cargo add tokio --features rt-multi-thread,macros
  3. Replaced src/main.rs with a basic Topcoat page that renders “Hello, World!”.
  4. Installed the CLI:Bashcargo install topcoat-cli
  5. Started the development server:Bashtopcoat dev
  6. Opened http://127.0.0.1:3000 in the browser — basic rendering worked.
  7. Tried an interactive example using signal, @click, and :hidden for a toggle button.

What Went Right

  • Project creation and dependency installation worked smoothly.
  • Server-side rendering worked correctly.
  • The page successfully displayed content from Rust components.
  • The development server (topcoat dev) watched for file changes.
  • HTML with Topcoat’s reactive attributes was generated correctly.

What Went Wrong

  • Port 3000 was already in use from a previous run (fixed by killing the process).
  • Client-side reactivity (the toggle button) did not work.
  • The JavaScript runtime was present in the page, but clicking the button did not update the DOM.
  • Topcoat is still extremely new (v0.5.0) and experimental, so some features are unstable.

Conclusion

Topcoat shows promise as a simple full-stack Rust framework, especially for server-rendered apps. However, because it is so new, client-side reactivity is not yet reliable. It is better suited for experimentation than production use at this stage.