Courses & TutorialsProgramming

Awesome Yew – Massive Collection of Resources

 

A curated list of awesome things related to Yew.

Yew is a modern Rust framework inspired by Elm and React for creating multi-threaded frontend apps with WebAssembly.

 

Contents

Official

  • Yew – Rust / WebAssembly framework for building client web apps.
  • Live demo – A todomvc demo.
  • Examples – Smaller examples included in official repo.
  • API Docs – Docs on docs.rs.
  • Website – Official website.
  • Chatroom – It is pretty active and is a great place to ask questions.
  • Financial Contribute – Become a financial contributor and help us sustain our community.
  • Yewtify – Vuetify components for Yew Framework.

Projects

  • Realworld example – Exemplary real world app built with Rust + Yew + WebAssembly.
  • webapp.rs – A web application completely written in Rust, frontend is built with Yew.
  • Rust-Full-Stack – Easily testable and working Rust codes with blog posts to explain them.
  • Bucket Questions – A webapp written entirely in Rust for a dumb party game.
  • web-view todomvc desktop app – Demo how to use yew for a todomvc that compiles to WebAssembly and is bundled as a lightweight(~2mb) desktop app by web-view, as an alternative to Electron, web-view also has a demo.
  • yew-react-example – This project shows how to create a web app using a React component inside a Yew component.
  • Kirk – Just A Rust WebAssembly Blog.
  • rust-async-wasm-demo – Toy project to learn Rust and async that can be deployed to the web.
  • karaoke-rs – A simple, network enabled karaoke player in Rust.
  • I Love Hue! (rs) – A clone of the mobile game I Love Hue in Yew (Rust).
  • yew-styles-page – This is an initial project of a framework style for yew.
  • caniuse.rs – Rust feature search.
  • Rust electron yew demo – An example of building a Rust based web app (Yew) into a native app using electron.
  • covplot – Live graphs of worldwide CoVID-19 data.
  • Tanoshi – Tachiyomi-like web manga reader. Front-end for tanoshi.
  • Minesweeper – Minesweeper built with Rust, Yew and WebAssembly.
  • Freecell – A patience game written in Rust and Yew.
  • Daydream – A small Matrix web client written in Rust.
  • Yew-WebRTC-Chat – A simple WebRTC chat made with Yew.
  • Yew Fullstack Boilerplate – Highly opinionated boilerplate for creating full stack applications with Rust.
  • Chord Quiz – Practice recognizing chords in this Rust/Yew/WebAssembly app.
  • RustMart – Single Page Application (SPA) written using Rust, Wasm and Yew.
  • DevAndDev – A website where developers can find pair-programming partners. Written in Rust, Yew frontend.
  • yew-octicons – An easy interface for using Octicons in Yew projects.
  • Pipe – This is a Rust / Wasm client web app which is a task control center.
  • note-to-yew – Convert your markups into Yew macro online, which is also made by Yew.
  • ASCII-Hangman – Configurable Hangman game for children with ASCII-art rewarding.
  • dotdotyewDot-voting using Yew, with Rust powering the backend API.
  • wasm-2048 – 2048 game implemented with Rust and Yew and compiled to Wasm.

Templates

Crates

Component Libraries

  • yew-mdc – Material Design Components for the Yew framework.
  • muicss-yew – MUI-CSS Components for Yew framework.
  • yew-bulma – A Rust library providing components based on the bulma css library for projects using Yew.
  • yew-material-components – Yew material components.
  • Yewprint – Port of blueprintjs.com to Yew.
  • ybc – A Yew component library based on the Bulma CSS framework.
  • patternfly-yew – Patternfly components for Yew.

Components

  • Yew Form – Components to simplify handling forms with Yew.
  • yew-component-size – A Yew component that emits events when the parent component changes width/height.
  • yew-virtual-scroller – A Yew component for virtual scrolling / scroll windowing.

Utils

  • yew-state – Ergonomic shared state for Yew components with optionally persistent local and session storage.
  • reacty_yew – Generate Yew components from React components via Typescript type definitions.
  • styled-yew – CSS in Rust, similar to styled-components, but for Yew.

Wasm

  • wasm-bindgen – Facilitating high-level interactions between WebAssembly modules and JavaScript.
  • stdweb – Provides Rust bindings to the Web APIs and to allow a high degree of interoperability between Rust and JavaScript.

Tooling

  • wasm-pack – Your favorite Rust -> WebAssembly workflow tool.
  • wasm-pack-action – Github action to install wasm-pack by downloading the executable to speed up CI/CD.
  • wasm-bindgen-action – Github action to install wasm-bindgen by downloading the executable to speed up CI/CD.
  • cargo-web – A Cargo subcommand for the client-side Web.
  • Trunk – Build, bundle & ship your Rust Wasm application to the web.
  • wabt – The WebAssembly Binary Toolkit, for the wasm-strip and wasm-objdump tools to reduce .wasm file size.
  • binaryen – Compiler infrastructure and toolchain library for WebAssembly, for the wasm-opt tool to reduce .wasm file size.

Articles

Books

Alternatives

Yew team love to share ideas with other projects and believe we can all help each other reach the full potential of this exciting new technology.

  • Draco – A Rust library for building client side web applications with WebAssembly.
  • Percy – A modular toolkit for building isomorphic web apps with Rust + WebAssembly.
  • Sauron – Sauron is an HTML web framework for building web-apps.
  • Seed – A Rust framework for creating web apps.
  • Smithy – A framework for building WebAssembly apps in Rust.

Related lists

  • Awesome Rust – A curated list of Rust code and resources.

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button