#web-apps #wasm-framework #front-end #web-framework #framework #web

simi

一个用于在 Rust 中构建 wasm 前端网页应用的框架

9 个版本

0.2.1 2019年5月4日
0.2.0 2018年12月31日
0.1.4 2018年10月28日
0.0.1 2018年9月29日
0.0.0 2018年7月19日

#13 in #wasm-framework

29 每月下载量
用于 2 个crate(通过 simi-test

自定义许可

105KB
2K SLoC

Simi [WIP]

一个用于在 Rust 中构建 wasm 前端网页应用的框架。Simi 受 Yew 启发

这仍然是 WIP。可能会频繁出现破坏性变更。

  • 没有 webpack,没有 nodejs
  • 组件,嵌套组件
  • 子应用
    • 你的主应用可以在其中包含多个子应用。子应用独立于父应用渲染其自己的视图。父应用可以向子应用发送消息,反之亦然。
  • 尝试避免在更新时生成新的虚拟 DOM
    • 只为一些特殊情况生成新的虚拟 DOM
  • 自动将 .scss 编译为 .css,借助 simi-cli(感谢 rsass

文档

指南

基于稳定 Rust 构建

有关如何构建和提供 simi 应用的信息,请参阅指南(在上文文档部分中的链接)。

现在支持在稳定 Rust 上构建 master 分支。但只有 stable-examples/* 中的示例可以成功在稳定 Rust 上构建。如果您使用 simi-cli,从 Git master 安装它,并在示例文件夹中运行 simi build -ssimi build --stable,例如,在 stable-examples/counter 中。或者运行 simi serve -s 并访问 localhost:8000

基准测试

Simi 的基准测试提交到了 https://github.com/krausest/js-framework-benchmark这里是一个快照结果(只看非键值结果,Simi 还不支持键值循环)。请注意,Stdweb 和 Yew 的基准测试二进制文件是使用 Rust nightly-2018-07-11 构建的。Simi 使用大约在 2018-12-7 到 9 之间的 Rust nightly 版本构建(具体日期已不记得)。以下是基准测试仓库的一些说明

当前快照可能质量不一致(即结果可能针对混合浏览器版本,每个基准测试的运行次数可能不同)

许可证

我对任何许可证都不熟悉,所以我不确定该选择哪种许可证。我在此仓库根目录下的 LICENSE 中草拟了自己的最小许可证。

依赖项

~9–13MB
~236K SLoC