45 个版本
0.10.0 | 2023年3月7日 |
---|---|
0.9.2 | 2022年7月1日 |
0.9.1 | 2022年4月8日 |
0.8.0 | 2020年10月23日 |
0.2.1 | 2018年12月31日 |
#1113 在 WebAssembly
3,433 每月下载量
用于 20 个 Crates(其中 18 个直接使用)
365KB
7.5K SLoC
网站 | Discord
Seed 是一个基于 Elm 架构的 Rust 前端框架,用于创建快速可靠的网页应用程序。
- 完全用 Rust 编写,包括模板系统(例如
div!
宏)。 - 内置基于 Elm 架构的状态管理。
- 为 Rust 初学者和专业人士提供清晰且全面的文档。
- WebAssembly。
为什么选择 Seed?
Seed 允许您利用 Rust 的所有优势来开发前端,包括速度、安全性和更多。
Seed 的模板系统使用宏语法,让 Rustaceans 感到宾至如归。这意味着代码检查、格式化和注释都将工作,并且全部在 Rust 中完成。这与依赖于 IDE 扩展的 JSX 类似语法形成对比,后者旨在改善开发者体验。
为什么不选择 Seed?
- 目前没有维护。
- WebAssembly 是较新的技术,支持较少。 浏览器兼容性为 95.5%。
- 预构建组件较少。您可能需要自己编写组件,例如日期选择器。
- 尚未支持服务器端渲染 #232。
- 您可能更喜欢 其他 Rust 框架
入门指南
要立即开始,我们可以使用快速启动模板
cargo install cargo-generate
cargo install trunk
cargo install wasm-bindgen-cli
cargo generate --git https://github.com/seed-rs/seed-quickstart.git --name seed-quickstart
cd seed-quickstart
trunk serve
如果您遇到关于wasm绑定到不同版本的wasm-bindgen
的错误,请按照建议运行cargo update -p wasm-bindgen
。这将修复链接问题。
现在您应该在浏览器中看到运行在localhost:8080
的工作计数器应用程序。
进入Seed
要了解Seed的功能,请访问Seed网站和库文档。
Seed示例是另一个很好的资源。
Trunk是Seed推荐的打包器。Seed项目通常使用trunk serve
而不是cargo run
来运行。您也可能会在示例中看到cargo make start project_name
。从现在开始,我们推荐使用Trunk。
Seed Styles是Seed的样式库,用于创建全局和局部样式。
要使用Web API,有web-sys
,它是wasm-bindgen
项目的一部分。Seed依赖于wasm-bindgen
。
还有两个模板仓库。然而,它们目前并不更新。
常见问题解答
Seed的稳定性如何?
作为一个框架,Seed主要功能完整。您可以在Seed中构建完整的Web应用程序。在Seed中构建的项目使用Rust stable
。由于使用Rust,因此很容易创建健壮且可预测的程序。
Seed的下一步是什么?
Seed目前没有维护,但如果您想看到一些功能并提供预算,请随时联系我们。
文档
- 指南可以在seed-rs.org找到。
- API文档可以在docs.rs/seed找到。
资源
- Awesome-seed-rs:资源列表
- Seed Realworld:详细的真实世界示例(已过时但仍有帮助)
- Engineering Rust Web Applications:描述使用Seed进行全栈Rust Web开发的书籍(已过时但仍有帮助)
贡献
请参阅CONTRIBUTING.md。
支持者
请参阅BACKERS.md。
依赖项
~9–12MB
~220K SLoC