2021-06-15
3089
#rust#webassembly
Mario Zupan
54824
Jun 15, 2021 ⋅ 11 min read

Build a Rust + WebAssembly frontend web app with Yew

Mario Zupan I'm a self-employed Software Engineer and Trainer living in Vienna, Austria. I've worked at several companies and in multiple fields building, maintaining and operating distributed systems at scale using Java, Kotlin, Node, Go and Rust. I also taught advanced software engineering courses for several years at the University of Applied Sciences FH Joanneum in Graz and worked as a technical trainer, empowering other software engineers to reach their full potential. Currently, I work as a freelance software engineer and trainer again, looking to help companies build high-quality software solutions. Check out my personal blog: http://www.zupzup.org.

Recent posts:

Goodbye, messy data: An engineer’s guide to scalable data enrichment

Goodbye, messy data: An engineer’s guide to scalable data enrichment

Walk through building a data enrichment workflow that moves beyond simple lead gen to become a powerful internal tool for enterprises.

Alexandra Spalato
Oct 8, 2025 ⋅ 6 min read

DesignCoder and the future of AI-generated UI

From sketches to code in minutes, DesignCoder shows how AI-generated, hierarchy-aware UIs could change the way developers prototype and ship apps.

Rosario De Chiara
Oct 7, 2025 ⋅ 5 min read

Should you use if() functions in CSS?

It’s 2025, and CSS finally thinks logically. The if() function brings real conditional styling — no hacks, no JS workarounds. Here’s how to use it right.

Ikeh Akinyemi
Oct 7, 2025 ⋅ 16 min read
Typescript or Zod for Validation?

TypeScript vs Zod: Clearing up validation confusion

Learn when to use TypeScript, Zod, or both for data validation. Avoid redundant checks and build safer, type-sound applications.

Alexander Godwin
Oct 6, 2025 ⋅ 3 min read
View all posts

2 Replies to "Build a Rust + WebAssembly frontend web app with Yew"

  1. Hey thanks for this tutorial.

    Maybe some extra sentences for absolute beginners would be nice, like in this paragraph:
    `Trunk creates dist/index.html with a body injected, holding the entry point for our Wasm application.`
    Maybe adding “executing” `trunk build` will bla bla bla.

    Or in which files the code should be placed. Things like that might help (me) greatly!

  2. Another good tutorial Mario, so thanks. As you say those libraries are in early development as Yew seems to have changed a bit since you created this article but I managed to get there in the end. I think you learn more when things go wrong so it’s a good thing! I’ve only followed 2 of your tutorials so far and one, I hope constructive criticism I have, is that I wish you would introduce the code in dependency order.
    I’ve never liked inline styles so I tried to link in a main.css stylesheet but for whatever reason this didn’t work, so obviously something needs to be different for this to work with Yew?
    Now on to Full-stack Rust: A complete tutorial with examples, keep up the good work as I’m learning quite a bit working through these tutorials.

Leave a Reply