跳至主要内容

Awesome Yew

项目

  • Realworld example - 使用 Rust + Yew + WebAssembly 构建的示例性真实世界应用程序。它利用了 Yew 的最新函数组件钩子。它还支持由Tauri支持的桌面应用程序。
  • webapp.rs - 完全用 Rust 编写的 Web 应用程序,前端使用 Yew 构建。
  • Rust-Full-Stack - 可轻松测试且可正常工作的 Rust 代码,并附有博文进行说明。
  • Bucket Questions - 为愚蠢的派对游戏完全用 Rust 编写的 Web 应用程序。
  • web-view todomvc 桌面应用程序 - 演示如何将 yew 用于 todomvc,该 todomvc 编译为 WebAssembly,并由 web-view 捆绑为一个轻量级(~2mb)桌面应用程序,作为 Electron 的替代品,web-view 还具有 演示
  • yew-react-example - 此项目展示了如何在 Yew 组件中使用 React 组件创建 Web 应用程序。
  • Kirk - 只是一个 Rust WebAssembly 博客。
  • rust-async-wasm-demo - 学习 Rust 和可部署到 Web 的异步的玩具项目。
  • karaoke-rs - 一个简单、支持网络的 Rust 卡拉 OK 播放器。
  • 我爱色调!(rs) - 移动游戏我爱色调在 Yew (Rust) 中的克隆。
  • yew-styles-page - 这是 yew 框架样式的初始项目。
  • caniuse.rs - Rust 特性搜索。
  • Rust electron yew 演示 - 使用 electron 将基于 Rust 的 Web 应用程序 (Yew) 构建为原生应用程序的示例。
  • covplot - 全球新冠肺炎数据的实时图表。
  • Tanoshi - Tachiyomi 类似的 Web 漫画阅读器。tanoshi 的前端。
  • 扫雷 - 使用 Rust、Yew 和 WebAssembly 构建的扫雷。
  • 空当接龙 - 使用 Rust 和 Yew 编写的纸牌游戏。
  • Daydream - 一个用 Rust 编写的 Matrix 小型网络客户端。
  • Yew-WebRTC-Chat - 使用 Yew 制作的一个简单的 WebRTC 聊天。
  • Yew 全栈样板 - 非常有主见的样板,用于创建带有 Rust 的全栈应用程序。
  • 和弦测验 - 在此 Rust/Yew/WebAssembly 应用程序中练习识别和弦。
  • RustMart - 使用 Rust、Wasm 和 Yew 编写的单页应用程序 (SPA)。
  • DevAndDev - 开发人员可以在其中找到结对编程合作伙伴的网站。使用 Rust 和 Yew 前端编写。
  • yew-octicons - 在 Yew 项目中使用 Octicons 的简单界面。
  • Pipe - 这是一个 Rust / Wasm 客户端 Web 应用程序,它是一个任务控制中心。
  • note-to-yew - 在线将你的标记转换为 Yew 宏,它也是由 Yew 制作的。
  • ASCII-Hangman - 为儿童配置的 Hangman 游戏,带有 ASCII 艺术奖励。
  • dotdotyew - 使用 Yew 的点投票,Rust 为后端 API 提供支持。
  • wasm-2048 - 使用 Rust 和 Yew 实现的 2048 游戏,并编译为 Wasm。
  • website-wasm - 我个人网站,通过 Yew/Wasm 用 Rust 编写。
  • KeyPress - 一个 Rust WebAssembly 网站示例,用于练习中文英语。
  • yew-train-ticket - 一个 Rust WebAssembly Webapp 示例,基于 Yew 最新钩子和函数式 API,代码风格极其类似 React 函数组件。
  • yew-d3-example - 使用 Yew 显示 d3 图表。
  • Oxfeed - 一个使用 Rust 编写的提要阅读器,带有 Yew 前端。
  • Flow.er - 一个笔记本应用程序,集成了待办事项列表实用程序。使用 Rust、WebAssembly、Yew 和 Trunk 开发。
  • Fullstack-Rust - 一个全栈 Rust 应用程序(Connect5 游戏),带有 Actix-web、Yew、Bulma CSS 和 Diesel。
  • Sea_battle - 一个海战游戏的简单示例。Rust + Yew。
  • tide-async-graphql-mongodb - 清理 graphql 服务的样板文件,带有 wasm/yew 前端。
  • surfer - 基于 yew + graphql 构建的博客,带有实时演示网站。graphql 服务的后端和 Web 应用程序的前端。
  • qubit - 基于 Rust 和 WebAssembly 的便捷计算器,实时演示
  • Paudle - Josh Wardle 出色的文字游戏 Wordle 的再实现。
  • Rust 算法 - 一个网站,包含各种算法的交互式实现(目前仅限于排序算法)。
  • Marc Portfolio - 软件开发人员作品集,实时演示
  • zzhack - 基于 Rust 和 Yew 的个人博客,实时演示
  • viz.rs - viz Web 框架的网站,实时演示
  • hurlurl - 随机链接缩短器,实时演示
  • Macige - 移动应用程序开发的 CI 工作流生成器,实时演示
  • Spaceman - gRPC 通信协议的跨平台图形化客户端。

模板

Crates

组件库

  • yew-mdc - Yew 框架的 Material Design 组件。
  • muicss-yew - Yew 框架的 MUI-CSS 组件。
  • yew-bulma - 一个 Rust 库,为使用 Yew 的项目提供基于 bulma css 库的组件。
  • material-yew - Material Web 组件的 Yew 封装。
  • Yewprint - blueprintjs.com 移植到 Yew。
  • ybc - 一个基于 Bulma CSS 框架的 Yew 组件库。
  • patternfly-yew - Yew 的 Patternfly 组件。
  • yew-feather - Yew 的 Feather Icons 组件。
  • tailwind-yew-builder - 使用 docker-compose 为 Yew 构建 Tailwind CSS。还支持 Trunk。
  • yew-components - Yew 框架的 Material Design 组件。
  • yew-chart - 一个基于 Yew 的图表库,提供基于 SVG 的组件来渲染图表。

组件

  • Yew Form - 组件,用于简化使用 Yew 处理表单。
  • yew-component-size - 当父组件更改宽度/高度时,发出事件的 Yew 组件。
  • yew-virtual-scroller - 用于虚拟滚动/滚动窗口的 Yew 组件。
  • yew-autoprops - proc-macro,用于自动从 Yew 组件的参数派生 Properties 结构体。

Hooks

Utils

  • Yewdux - 类似 Redux 的 Yew 应用程序状态容器。
  • reacty_yew - 通过 Typescript 类型定义从 React 组件生成 Yew 组件。
  • styled-yew - Rust 中的 CSS,类似于 styled-components,但适用于 Yew。
  • stylist-rs - WebAssembly 应用程序的 CSS-in-Rust 样式解决方案。
  • Yew Interop - 在 Yew 中异步加载 JavaScript 和 CSS。
  • Tailwind RS - Rust 中的 Tailwind 样式跟踪器,JIT + AOT 解释器。

Wasm

  • wasm-bindgen - 促进 WebAssembly 模块和 JavaScript 之间的高级交互。
  • stdweb - 提供 Rust 与 Web API 的绑定,并允许 Rust 和 JavaScript 之间高度互操作。

Tooling

  • wasm-pack - 您最喜欢的 Rust -> WebAssembly 工作流工具。
  • wasm-pack-action - Github 操作,通过下载可执行文件来安装 wasm-pack,以加快 CI/CD。
  • wasm-bindgen-action - Github 操作,通过下载可执行文件来安装 wasm-bindgen,以加快 CI/CD。
  • cargo-web - 客户端 Web 的 Cargo 子命令。
  • Trunk - 构建、打包和发布 Rust Wasm 应用程序到 Web。
  • trunk-action - Github 操作,通过下载可执行文件来安装 Trunk,以加快 CI/CD。
  • wabt - WebAssembly 二进制工具包,用于 wasm-stripwasm-objdump 工具,以减小 .wasm 文件大小。
  • binaryen - WebAssembly 的编译器基础设施和工具链库,用于 wasm-opt 工具,以减小 .wasm 文件大小。

文章

书籍

替代方案

Yew 团队喜欢与其他项目分享想法,并相信我们都可以帮助彼此充分发挥这项激动人心的新技术的潜力。

  • Draco - 一个使用 WebAssembly 构建客户端 Web 应用程序的 Rust 库。
  • Percy - 一个使用 Rust + WebAssembly 构建同构 Web 应用程序的模块化工具包。
  • Sauron - Sauron 是一个用于构建 Web 应用程序的 HTML Web 框架。
  • Seed - 一个用于创建 Web 应用程序的 Rust 框架。
  • Smithy - 一个用于在 Rust 中构建 WebAssembly 应用程序的框架。
  • Dioxus - 一个优雅的类 React 库,用于构建桌面、Web、移动、SSR、实时视图等的用户界面。
  • Sycamore - 一个用于在 Rust 和 WebAssembly 中创建 Web 应用程序的响应式库。