#simi #serve #build #testing #command-line-tool #static #browser

bin+lib simi-cli

一个命令行工具,用于帮助构建、测试、提供Simi应用程序

11个版本

0.1.8 2019年5月4日
0.1.7 2019年3月22日
0.1.6 2018年12月7日
0.1.5 2018年10月9日
0.0.0 2018年7月19日

#25 in #serve

Download history 8/week @ 2024-03-30 75/week @ 2024-06-29

每月75次下载

自定义许可证

36KB
881

simi-cli

提供 simi,一个用于创建和构建 simi 前端Web应用程序的命令行工具。

simi 命令是在Fedora系统上构建的。我不确定它是否在其他系统上也能工作。

simi build 构建应用程序。 simi serve 构建并提供应用程序。文件监视器监视 src/static/ 中的更改。 simi test 在无头浏览器中运行测试

输出

simi-cli 将输出至少4个文件:<app_name>.js<app_name>_bg.js<app_name>_bg.wasmindex.html。其中 <app_name> 是您 Cargo.toml 中的 package.name(用 - 替换 _)。

.simi.toml

您可以通过此文件为 simi-cli 指定一些参数。

输出路径= "..."

这是 simi-cli 将输出构建文件并将 crate-root/static/* 复制到的地方。

output_path 的默认值是 crate-root/simi-site,其中 crate-root 是您的 Cargo.toml 所在的文件夹。

index= "..."

本规范定义了要复制的 index.html 文件的路径,并将其复制到 output_path。默认值是 crate-root/static/index.html。如果没有指定且默认值不存在,则 simi-cli 将生成默认的 index.html

scss= "..."

指定 .scss 文件,供 simi-cli 编译为 .css 并输出到 output_path

默认值是 crate-root/static/style.scss

如果 index.html 是自动生成的,则 simi-cli 将添加一个 <link> 元素到编译后的 .css

wasm_serve_path= "..."

如果您想在子路由下提供您的 wasm-app 文件,例如:example.com/static-files/wasm-app/*,则必须指定此参数

wasm_serve_path = "static-files/wasm-app"

目前,.wasm 文件是通过 fetch 加载的。如果我们不提供 wasm_serve_path,fetch 总是尝试在根目录加载文件。

您自己的 index.html

如果您想提供自己的 index.html,应将其放置在 crate-root/static/index.htmlsimi-cli 将仅复制此文件到 output_path,而不做任何修改。因此,您必须在您的 index.html 中添加

<script src="<serve_path/app_name>_bg.js" type="module"></script>
                                          ^^^^^^^^^^^^^ <= Important!

(有关 <app_name> 的信息,请参阅上面的 Output 部分)。

如果您还有一个 crate-root/static/style.scsssimi-cli 仍将其编译并输出到 output_path,但您也必须添加

<link rel='stylesheet' href='serve_path/style.css'>

到您的 index.html

贡献

请在 CHANGELOG.md 中记录您的更改

simi-cli TODO

目前,没有为 simi-cli 编写测试。但如果您想为这个 crate 做贡献,您必须添加测试(至少为您的更改)。

  • serve 在代码更改时支持某些类型的自动重新构建
  • new 需要实现

依赖项

~15–26MB
~361K SLoC