#static-site-generator #blog #eric #themes #compatible #jekyll #octopress

bin+lib ebg

Eric的博客生成器,一个简单的静态网站生成器

12个不稳定版本 (4个重大更新)

0.5.0 2024年6月20日
0.4.1 2024年3月5日
0.4.0 2023年12月28日
0.3.0 2023年11月14日
0.1.4 2023年2月16日

#116模板引擎

每月22次 下载

Apache-2.0

115KB
3K SLoC

Eric的博客生成器

Crates.io docs.rs

这是一个非常不具创造性的命名的静态网站生成器,侧重于博客。EBG主要被用来驱动 https://theincredibleholk.org。如果您想使用它为自己的网站,也是可以的,但到目前为止,这可能是一项相当费力的工作。例如,EBG还没有包含任何预定义的主题,因此您需要从头开始制作一个,而主题制作过程文档也很差。

EBG受到了 OctopressJekyll 的启发,并且可能因为我在开发EBG时将其用于从我的Octopress博客进行原地升级而与之高度兼容。随着时间的推移,它开始在一定程度上分化,以支持我的个人需求,并且预计在未来将继续分化。


lib.rs:

这个crate提供了Eric的博客生成器的核心功能。

它主要被设计为由ebg二进制文件驱动,但理论上,如果您足够努力,它也可以作为一个库来使用。

网站生成器过程经过几个阶段

  1. 索引
  2. 渲染
  3. 生成

在一个更传统的编译器中,这些阶段大致对应于解析、编译和链接。

该程序目前主要是串行的,但希望它可以被管道化和并行化,成为一个非常快的网站生成器。

索引

索引阶段负责读取网站的配置和所有源文件。最终结果是可用于计算网站元数据、页面间链接等的数据结构。

渲染

渲染阶段负责将任何Markdown源页面转换为HTML。

生成

最后一步是将所有渲染内容写入目标目录。许多文件直接复制,但也从上一阶段的渲染Markdown内容中生成HTML页面。

依赖项

~29–43MB
~709K SLoC