使用Rust实现Web项目的前后端的源码


Rust的WebAssembly工具在过去的两年里有了很大的改进,并且已经非常成熟了。由于有了Trunk这样的工具,构建和打包的步骤现在更简单了,也可以用各种框架(如yew或dioxus)编写前端代码。另外,现在有相当多的crack支持wasm,基本的如chono或更高级别的库如plotters。

此外,Rust服务器端的可用选项也在增加。像tower这样的项目为客户端/服务器提供了可重复使用的构建模块,像axum这样的网络服务器也应运而生,它们可以快速组建网络应用,而无需太多的模板。

在这篇攻略中,我将描述我目前的默认项目设置,在前端和后端使用Rust的Web项目。它适用于使用WASM/JS进行渲染和路由的典型单页网络应用。我曾将其用于仪表盘、浏览器游戏等,但它应该适用于任何想要使用Rust服务器和前端的Web应用。我选择axum作为服务器部分,yew作为前端部分,但它应该与其他选择类似。至于它将提供的功能。

 https://github.com/rksm/axum-yew-setup.

  • 在开发模式下运行服务器/前端,自动重新加载
  • 在生产模式下运行服务器/客户端,使用预编译的源代码
  • 从dist/目录中提供额外的文件
  • 允许添加更多自定义服务器逻辑的存根

详细点击标题