2个版本
0.2.1 | 2024年2月11日 |
---|---|
0.2.0 | 2024年2月11日 |
#829 在 HTTP服务器
33KB
414 行
lib-humus 🌱
帮助使用axum、Tera 和 toml 创建前端界面。
⚠️ 请注意,直到发布声明为稳定的版本之前,接口可能是不稳定的。
名字的由来是什么?
这是用于培育新项目的东西,并且它包含 ter(r)a,所以叫 humus。
它做什么?
渲染模板
HumusEngine
使用 Tera 和 axum 框架以最小的代码开销在主逻辑中生成 http 响应。它能够从一个数据结构中提供 UI 和 API。
使用 axum-view
(默认启用)功能标志进行此操作。axum-view+cookie
功能标志启用额外的 cookie 设置逻辑。
加载模板
为了使模板有用,它们必须从磁盘加载到内存中。 TemplateEngineLoader
负责一次性加载整个配置模板目录。
它位于默认启用的 tera-loader
功能标志之后。
加载TOML
设计一个复杂的配置系统很有趣,但 serde 和 toml 文件通常就足够了。《code>read_toml_from_file() 函数使这变得更加容易。输入文件路径,解析结构或输出错误。
它位于默认启用的 toml
功能标志之后。
兼容性
- lib humus 0.2 与 axum 0.7 兼容
- lib-humus 0.1 是为了与 axum 0.6 兼容而制作的
文档
或者你可以自己构建离线文档
cargo doc -F full
firefox target/doc/lib_humus/index.html
许可证
本项目根据 AGPL-3.0-or-later 许可证 许可,这是为了确保它不会被用于专有软件。
依赖关系
~4–15MB
~190K SLoC