10 个不稳定版本 (3 个破坏性版本)
0.5.2 | 2023 年 4 月 15 日 |
---|---|
0.5.1 | 2023 年 4 月 12 日 |
0.4.1 | 2023 年 4 月 1 日 |
0.3.3 | 2023 年 3 月 30 日 |
0.2.2 | 2023 年 3 月 23 日 |
#633 in 模板引擎
33KB
885 行
stoic
stoic 是一个简单的静态博客生成器,旨在学习 Rust 及其生态系统。
安装
cargo install stoic
用法
stoic new blog
在 blog/
目录中生成一个新的博客,具有以下文件结构
blog
├── about.md
├── index.md
├── assets
│ ├── script.js
│ └── style.css
├── posts
│ └── 2022-01-26-hello-world.md
└── templates
├── base.hbs
├── index.hbs
├── nav.hbs
├── page.hbs
├── post.hbs
└── posts.hbs
你可以运行以下命令
stoic build blog dist
以在 dist/
目录中生成相应的静态 HTML,具有以下文件结构
dist/
├── about.html
├── index.html
├── assets
│ ├── script.js
│ └── style.css
└── posts
├── 2022-01-26-hello-world.html
└── index.html
stoic watch blog dist
告诉 stoic
监视 blog/
中的更改并自动重建博客。
它将在 0.0..0.0.:3030
运行静态 Web 服务器。每次重建后,您的浏览器应自动重新加载。
集合
上面创建的由 new
命令的站点包含一个集合:posts
。集合通过文件夹名称标识。此文件夹中的所有 Markdown 文件都被视为该集合的项目。在 templates
文件夹中是 posts.hbs
和 post.hbs
模板。当生成集合索引时使用 posts.hbs
模板。当生成集合中的每个项目时使用 post.hbs
模板。
要创建新的集合,例如 works
- 创建文件夹
works
- 创建
templates/works.hbs
模板 - 创建
templates/work.hbs
模板 - 将工作 Markdown 文件放入
works
文件夹
集合项目元数据
集合文件夹中的 Markdown 项目应包含位于文件顶部的元数据部分
<!--metadata
date = 2023-03-25
shortname = "Foo Bar"
slug = "foo_bar
-->
date
是日期,格式为 YYYY-MM-DD
。日期应存在于所有集合项目中,因为它用于排序。
shorname
是用于面包屑中实体的标签。如果没有提供,则将使用日期。
slug
是输出文件的名称。如果您有一个输入文件 foo.md
但希望输出文件为 foo_bar.html
而不是默认的 foo.html
,则将 slug 设置为 foo_bar
。
示例
依赖项
~29–44MB
~648K SLoC