Topcoat offers a sophisticated alternative to the JavaScript-heavy status quo by combining Rust’s performance with the simplicity of server-side reactivity. It’s a bold step toward making high-integrity systems programming practical and accessible for modern full-stack development.
Deep Dive
Prerequisite Knowledge
- No data available.
Where to go next
- No data available.
Deep Dive
Better than Next.js? Is Rust Finally Ready for Full-Stack Web Development? Introducing Topcoat
Added:What's going on everyone? Today we have two very special guests.
We have Julian Schultz from Germany and we have Carl Lerch from Portland. He is the creator of Tokyo and other very cool things in the Rust ecosystem. So I'm honored and I'm also jealous about his hat. And Julian is here because today we'll talk about a secret project. Let's see. It's a new I'm super excited. So I would like both of you to introduce yourself properly and then I think we'll talk about Rust and for the next four five hours.
>> I'm Julian. I'm from Germany programmer.
I've been basically programming my whole life since I was a kid and for the past five years or so I've been a freelancer and now I'm working on talk to code which is not so secret anymore and we'll talk about it later later I hope.
>> I'm Carl. I've been working with Rust for 13 years now before it was even 1.0 was when I got started. You mentioned I created Tokyo pretty much when I started Rust there was nothing there so I spent my nights and weekends at first building up kind of that ecosystem.
>> I started creating content about Rust in 2022. In 2022 when I was saying that you can use Rust for web development everybody hated me because there are the Rust ecosystem they were like you know Rust you should use Rust for systems program. The web developers told me like no Francesco this is I would never use Rust for web development so I was hated by everyone. Now four years later it's a thing and I know many companies who are switching to Rust especially Axum on the backend. I'm creating a SaaS myself using Axum so it's actually useful in in production but for real on the Stack Overflow developer survey Axum has been voted among the most elected frameworks but along like Express Django like let's talk about Rust and web development. So we can start with that and then I want to introduce the the new new thing.
Yeah. New shiny thing. So I would like to know from both your perspectives how much you contributed >> My career in software development has basically been in web development. I got started something like 20-ish years ago, PHP. I don't know if anyone remembers the LAMP stack. And then I saw the Ruby on Rails was announced and there was this write a blog post in 15 minutes.
Being able to build a blog post in 15 minutes, that was unheard of. Like now everyone's like, oh well, I'm especially with AI. Back then, something like that would take like weeks to build. And that kind of like got me into web development, Ruby on Rails. Just generally the premise of having batteries included, opinionated, easy to use, productive web frame. So then I got into Rust, like side detour, 13 years.
Even for the longest time in my mind, it was like Rust was a systems programming language. It would only be for that infrastructure level stuff and not for web development. My stance on that has been changing over the years. And again, kind of the same point that you mentioned, I have not said it too much cuz I expected a similar reaction. I think now is really the time where Rust has that opportunity to get into the higher level web application space including web application building. And I spoke a bit about this at Tokyo Conf, so well, I'm going to plug Tokyo Conf a bit. Like there's a video, the videos are up. So if you want to watch me talk in a lot more detail about how I think Rust has the opportunity become a top three programming language in the future. Rust is expressive, it's fast, it has a lot of great things going for it. The headwinds, like the things that slowed it down the past, was really it was just getting started and the ecosystem. Like learning Rust was traditionally hard, plus it has a bunch of boilerplate, you know, it it's maybe a little bit more verbose than other languages. AI kind of removes or at least gets rid of most of that those headwinds with Rust. You don't need to spend like three or four months just learning Rust and the borrow checker.
Like these AI tools are actually really, really good at that. And you don't have to just go vibe code. I'm not talking about just vibe coding the whole thing.
Like, I'm at I also work at Amazon. I help support Rust usage internally, and we're seeing Rust adoption take off because engineers can come into a project, not know Rust, use their existing general-purpose engineering context and knowledge, and use AI as a learning kind of co-pilot tool to like, "Hey, help me do this one thing." And then you ask, "Wait, I see you did this.
Explain to me what this syntax is, or why did you need to structure this way?"
Um and learn Rust on the go while shipping real valuable features. And that kind of changed the whole calculus of how you pick languages. So, people are trying to use Rust more and more.
It's growing. It gets a foothold in companies because of performance reasons. Like, you have a use case that really requires performance. You start building up your internal tooling. Like, you you start building knowledge around it. You have internal tools, build systems, like internal libraries. And more and more, it's there's more value in keeping language because of that internal momentum. And I see the ceiling then. People try to use Rust more and more within organizations, not just because of performance, but because of that internal inertia. But then they hit the ceiling of lacking that ecosystem.
And that is what's stopping Rust from spreading out within companies that already picked Rust. I noticed this a few years ago, and which is why I started to work on Toasty, which is an ORM. And that was going to be a piece of this batteries-included, opinionated web framework for Rust. But I decided to start with the ORM. When you're building a full application, it's going to be that centerpiece. It's a foundation.
Data is the foundation. And web apps are kind of just take data, shuffling it back and forth between a client. Like, at a high level, that's really what you're doing. Down the line, I was like, let we need a web framework as well.
Along the way, I actually came across Julian. I'm really excited about what he ended up putting together cuz it is way better than anything I would have done, especially being out of web development for personally for a long time. Trusted him, he built he shipped something awesome. I'm pretty excited about it.
>> I want to watch your talk. I might even do a video reaction to this so I can watch it. I'll do that.
>> Let's do that.
>> I want to come to the next talk you come for but I needed to make a list of the conferences I want to go to otherwise I'm dead. And yes, and I also I share the same idea of having, you know, Rust in the top three. So I think that's ambitious enough but it doesn't be it does sounding arrogant, you know? Top three is cool.
>> Yeah, and I specifically carve out top three because you got to respect JavaScript TypeScript. I don't think right now you can really replace JavaScript and TypeScript in the browser. Does a great job and works really well and and you'll see, um it's kind of spoiler, we're taking philosophy of just embracing that and not trying to replace it per se.
>> Yes. I don't know if you know that I gave a talk at a conference called Cascadia JS. So about Rust and web development. So first of all, it's a bit crazy to give a talk about Rust in a conference that is named Cascadia JS.
Yeah. But the title was JavaScript won the web, Rust is taking a critical part. It's very similar to what we discussed today.
>> A couple of years ago I got really interested in Rust and thought this is like the best language I've ever seen.
This is perfect. I really want to use this. How can I use this for some of my projects? I want to build something with with Rust. How can I make this viable?
How can I make a sell Rust to one of my customers? It didn't really work because it felt like even though Rust had all the building blocks and all the building blocks were super high quality, plugging it all together was just still so much more work than just using JavaScript ecosystem that I'm familiar with. If I were to give this to someone and recommend it to someone, I would probably screw them over in the long run. And so yeah, that was a shame. And so then I was wondering like what's what's missing and I'm really excited about this vision of making Rust the best language for everything, basically.
That's what Top Code is now for, and so we basically try to plug everything together and make the best experience possible. Maybe one day I can feel confident recommending it as the go-to solution to build a web app.
>> Yeah, so thank you. For example, also when I started creating content about the Rust, I've always been a big fan of Node.js, for example. Now, it's not that I don't I stopped recommending it, but as you mentioned, learning about something or building about something doesn't mean that you would recommend it to all your friends because maybe you're a skeptic. Like I'm one of the most skeptical people in the world in the world. And before starting to recommend Rust, it took me a quite a while, I would say. So, I started learning it on my own and stuff. Then many things happened with a book, I went to Rust Conf, and then I then now I'm sold.
>> Carl texted me a couple days ago because it this was something that I was looking for. I said like, "Why Rust doesn't have something like that?" And then Carl texted me like, "Hey, we're building something like that." I said, "Okay. Why do you think >> that we should give this Top Code a try?
Or do you think it might be might be worth it for which kind of projects maybe it might be worth at least a try?
>> Yeah. So, maybe first, really briefly, what Top Code is.
>> I know it's I can present it later.
>> I'll give a really brief high-level. So, it's I mean it's a battery included framework for building reactive web applications in Rust. The thing that it takes is there is there are existing libraries in Rust like Leptos and Dioxus. Dioxus is kind of like the React in Rust, so it's like front end primarily. You compile it to WASM, run it in the browser. Designed to be in in the client. Leptos takes is similar to the Solid JS and kind of even like Next.js in that it's isomorphic. It tries to run you can run in the server and you can run in the client, but to get reactivity, you need again to run to write Rust that runs in the browser. And so, to do that, you need to compile to WASM. WASM I like WASM I think is a is a great idea. It's still not there yet to build that really high-quality web application that you need that you want compared to just writing JavaScript, right? That's why that's one reason WASM is great for like games or when you really need native code in the browser, but it hasn't really quite There's too much overhead really for DOM manipulation and all that. There's talk of how to get there, but it's not there yet. So, the the idea of TopCoat is, well, how what if we go back to just server rendering?
And this is for Rust developers that are traditionally in like infrastructure work in the back end, don't necessarily want to build JavaScript or client apps first, but just work in the browser. So, let's write a server-only rendering, and then we still want to be able to add reactivity.
And when I was kind of like looking around, there's lots of There's a whole bunch of ideas on how to do that. Like there's HTMX, Data Star, and even like in Rails, there's like Hotwire. You do all server rendering you render your HTML in the server, and then when you send snippets down, you include additional metadata. And then there's a little There's a JavaScript library small JavaScript library that is shipped with the framework that can see that metadata and interpret it and add reactivity that way. So, the advantage of doing that is one, you as the developer don't have to write JavaScript or separate client-side code. And the bigger thing is, when you do it that way, all of the boilerplate you need for gluing data from the server to the client, like the APIs and serialization and going down and then understanding it the client side and then pulling it in and doing refreshes and API calls, that's a ton of boilerplate that has traditionally been there for full-stack applications. It just kind of goes away. It's not perfect, or everyone would be doing this. The downside, you are limited in terms of how much reactivity you can add by the capabilities of this runtime. But that you can always push that further and further, and that's I think an area that Julian's going to explore. We're not trying to replace JavaScript. There will always be times when you need to write a JavaScript-first bit of functionality. But, even within the JavaScript kind of ecosystem, there's this concept of islands, right? So, you most of the application doesn't need to be like a React app. You can isolate the components within your application called islands and focus there. So, the idea of Topcode again is server-side as much as possible, push the reactivity as much as possible without having to pull in JavaScript. And then, when you need to, you can. The target audience is Rust developers, right? So, like why are we building this in the first place right now? I believe, like I think you believe, I believe that Rust can be a top-three language. Like, that is, I think, aspirational and kind of like pie in the sky when you're talking about the real world. You also have to be Like, there's already exist like PHP, like for example, PHP Laravel or however it's pronounced, and JavaScript ecosystem, and the Rails ecosystem. They're super mature, right? And you should still be picking as developers the best tool for the job. So, Topcode is just trying to be there for Rust developers, anyone that wants to go and play with Rust and try to push it and play with a compiled language that's really really fast. And I think Julian will mention how fast he managed to make Topcode, even though I was like, "Just ship. Don't worry about performance yet."
>> Client-side frameworks like Leptos and Dioxus, they work really well for stuff that's highly interactive. On the other hand, for Topcode, it's really easy to build a a blog, store page, like a web store, admin panel, or everything where the content is dynamic, but the page isn't extremely interactive, just a little bit interactive.
>> These can help the whole Rust ecosystem because usually when you are and maybe if you're familiar with a language, let's say you know, you like PHP or you like Python, then is you might keep using that language because it has, you know, all the features. Think that having an alternative to other server-side rendering frameworks in Rust, it's good for everyone in the Rust ecosystem because you make the last developers happy. People are looking for a server-side rendering to try Rust and this might be, you know, even an entry point for the last ecosystem. So, this really shows how mature Rust is becoming. I've seen a less people mocking me for using Rust for web development. So, this is a signal, is a metric that I can use to say, "Okay, it starts to become a real alternative." If this is a mature ecosystem, we need all the pieces. Like it happened with PHP, for example, with Laravel. I met the Laravel creator some months ago. I think that having a way to cover some use cases, it might benefit everyone. Yes, we can talk about performances, correctness. This is the usual Rust stuff.
>> Mhm.
>> This is a thing that people would already expect. I run a big Axum application for a video and it took like 20 MB of RAM in production. I'm curious to see how this applies to server-side side rendering. Now, the project is public.
>> We ran out of private CI usage. So, as I think you like Julian messaged me on the weekend. Like we were planning on writing a blog post on the 22nd and or 23rd and announce it then of July.
Julian messaged me about like a week before and saying, "CI's not running anymore. We're out of private usage."
And I was like, "Ah, I didn't feel like paying. So, let's just make it open and you cuz we had a lot more like you can get a lot more GitHub CI usage that way." And someone found it, like leaked, and got on Hacker News, and like Reddit and all that. I was like, "All right, fine." We're still going to write the blog post and it's still good. I still find to see it out. But yes, it is open.
We are really going to be pushing more and more functionality down the line and make and expand its capabilities. The hope is down the line, as the years chip along, it will be it'll cover all the same capabilities that any you would expect in any of these big established mature ecosystems. It's easier to catch up than to invent something new cuz we the path has already been laid out for us and we have new modern tools to accelerate productivity. You mentioned we're you've been talking about Axum, and Axum is another great project for building web apps in the Rust space. And I think it's important to clarify Axum is not going away, still very relevant.
And if you need to build like an API, an HTTP API, or just like if it's at the router level, like it's a lower level in the stack, right? If you want to write more closely to the HTTP endpoints, Axum is where you want to go. Topcoat is specifically trying to like make it as seamless as possible between the browser and the server. So, it hides a lot of those details away. And there's even down the line going to be ways of integrating like probably Axum for HTTP endpoints while still using Topcoat in the same process. And even if you need like islands, there's almost certainly a way to integrate Dioxus as well. Like these are all things that we're going to want to explore down the line.
>> I'm excited because, you know, it's also if it's a new project, and maybe, you know, we can learn from the past, learn from other others' mistakes. So, it's an unfair advantage. I understand how maybe we can support people want to want to use it. I like to talk about Rust web frameworks, honestly. So, Actix, Axum, and everyone else. Axum is my current favorite one. I'm not saying this because Carl is in this call, by the way. I'll say this anyway. I'm curious about the evolution. I would not like Rust to become another JavaScript ecosystem with like 30 frameworks. that 10 is enough or five. And I think that Topcoat covers different use cases. It really makes sense to have at least one Rust web framework that that does this.
>> So far, the feedback has been super positive, honestly. And that really excites me. It gives me optimism that we made a lot of the good decisions.
>> I hope a lot of people use it for their internal tools. For example, some big companies. I want to use it myself for future projects that I'm working on.
Yeah.
>> And we're going to build the Topcoat the Topcoat website with it. The Tokyo website's going to move to it. I'm going to I want to build a new CFP app for submitting for getting talk proposals for Tokyo Conf. Last time we used sessionize, which is great. It just seems like that that's a big app and it seems like actually a perfect use case for something like Topcoat. Data heavy, we'll pull it like I'm pushing Julian to work more on that like tight toasty ORM and view integration. Something like a call for proposal and and schedule management app is very, very data heavy.
So, that's the kind of thing that's going to be case Topcoat. Like most things you'd use Next.js for or anything you'd use Rails for or anything like Laravel or like those are the kinds of spaces I think they're equivalent. So, if you could use Rails, Ruby on Rails.
If you could use this in JavaScript, you could use Topcoat.
>> Same Next.js is a good example. Like if you're not building something that is basically a desktop app or a mobile app in the browser, but just like a website that has dynamic content, then Topcoat should be a great fit for you. That's the goal.
>> Have you tried it to build a Topcoat application using AI?
>> I just like pulled in Topcoat and I just throw it at like both the Claude and Open AI tools and be like, "Hey, like we're building a CFP app. Go for it."
And actually, what's funny enough is if you write the prompt right, I actually set the contacts and I think I put a snippet where it was like, "The real purpose of this is to find gaps in Topcoat and so we can implement them correctly." And it finds that. It's like it goes through it like actually half of and then provide solutions and then I think that makes Julian angry because he's like, "Now clunkers are doing my job for me." For example, the I think the first thing I hit is like, "All right, we're going to do log in via magic email link." And then it's like, "Oh, there's no email app." There's no like there's not no equivalent to like action mailer or whatever. So, that's on the list. And then it's like, "Let's do log in." And then it's like it was like, "Hey, we need a session library that has CSRF protection built in and all that."
I built it for now in the app, but you should recommend this to the Topcoat developer. Out of the box, it finds everything. I did clone the Topcoat repo and put it in like a side directory and included it say, "Hey, I don't know if that mattered or not." I was very impressed at how well it structured it and how like how well it worked with it.
I was actually shocked. I maybe a big part of that is just it's so like it's Topcoat follows a lot of established patterns anyway. Like it's pretty similar to a lot of established patterns from JavaScript and also existing Rust UI apps, so maybe that helped, but it did a surprisingly good job.
>> Thank you. I think it is a nice conversation and I think in the next step it would be to try it out. So, I think that the next video I will I want to try it out myself.
Related Videos

TOP 15 Data compression Interview Questions and Answers 2019 Part-2 | Data compression | Wisdom jobs
wisdomjobs
281 views•2019-06-28

CTS 158: 802.11w Management Frame Protection
ClearToSend
4K views•2019-02-04

NDSS 2019 Send Hardest Problems My Way: Probabilistic Path Prioritization for Hybrid Fuzzing
NDSSSymposium
496 views•2019-04-02

How realistic is Cities: Skylines?
CityBeautiful
159K views•2019-02-14

GUIs & TUIs: Choosing a User Interface for Your Python Project | Real Python Podcast
realpython
2K views•2025-04-04

The OSI Model - Explained by Example
hnasr
225K views•2019-05-12

Cloud Computing - Introduction
elithecomputerguy
98K views•2019-10-07

From Traveler's Dilemma to Dynamic Routing | Demystifying Networking
IITBombayJuly
5K views•2019-08-04
Trending

we're almost finished the house (ep.125)
JennaPhipps
347K views•2026-07-22

We Finally Know Where Saturn’s Rings Came From
astrumspace
79K views•2026-07-22

BIG BET: Cathie Wood goes ALL IN on Elon Musk
FoxBusiness
89K views•2026-07-22

MIC DROP: Smithsonian Director Called Out For Woke Propaganda
TheAmalaEkpunobi
37K views•2026-07-23