A Go package for building progressive web apps with WebAssembly, using a declarative, component-based UI written entirely in Go.
yewstack/yew
A Rust framework for building interactive client-side web apps by compiling to WebAssembly, with a JSX-like macro for HTML.
Open-source alternative to:React
- Stars
- 32,829
- Forks
- 1,451
- Open issues
- 127
- Last commit
- yesterday
What is it?
Yew is a Rust framework for building front-end web applications that run in the browser through WebAssembly. Developers declare interactive HTML using a macro that embeds Rust expressions, and the syntax is designed to feel familiar to anyone who has used JSX in React.
The framework minimizes DOM API calls during each render to keep pages responsive, and it makes it straightforward to move heavy processing into background web workers so the main thread stays free. Yew also supports JavaScript interoperability, so applications can use NPM packages and be integrated into existing JavaScript codebases.
The project is licensed under Apache-2.0 and provides documentation, examples, and a changelog in the repository, with translated docs in several languages.
Key features
- 01Declare interactive HTML with a JSX-like macro that embeds Rust expressions.
- 02Offload processing to background web workers to keep the UI responsive.
- 03Minimize DOM API calls on each render.
- 04Interoperate with JavaScript and use NPM packages.
Use cases
- Building single-page web applications entirely in Rust.
- Moving CPU-heavy computation off the main thread in a browser app.
- Adding Rust-based interactive components to an existing JavaScript project.
Topics
FAQ
- What is yew?
- A Rust framework for building interactive client-side web apps by compiling to WebAssembly, with a JSX-like macro for HTML. Yew is a Rust framework for building front-end web applications that run in the browser through WebAssembly. Developers declare interactive HTML using a macro that embeds Rust expressions, and the syntax is designed to feel familiar to anyone who has used JSX in React.
- Is yew free to use? What license does it have?
- yew is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is yew still maintained?
- Actively maintained. The last commit to yew was on Oct 20, 2026.
- What can I use yew for?
- Building single-page web applications entirely in Rust. Moving CPU-heavy computation off the main thread in a browser app. Adding Rust-based interactive components to an existing JavaScript project.
- Where can I get yew?
- The source code and installation instructions are on GitHub: https://github.com/yewstack/yew
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A JavaScript library for building interactive user interfaces from composable components, usable on the web, server and native platforms.
Angular is a TypeScript-based platform for building web applications, with a CLI, routing, forms, SSR and Material components.
A framework for building full-stack web apps with Svelte, covering routing, server rendering and deployment adapters for many hosting platforms.
A pure WebAssembly and JavaScript port of FFmpeg that lets browsers record, convert and stream video and audio.
A simple 2D game engine for the D programming language, with built-in physics, animation, tilemaps and dialogue.