14 releases
0.1.13 | Feb 21, 2023 |
---|---|
0.1.12 | Feb 21, 2023 |
0.1.11 | Jul 14, 2022 |
0.1.7 | May 2, 2022 |
0.1.6 | Apr 19, 2021 |
#217 in Template engine
25 downloads per month
2MB
1.5K
SLoC
Contains (ELF exe/lib, 7MB) futhorc-amd64-linux-v0.1.13
Futhorc
Futhorc is an educational exercise to learn Rust while writing a static site generator.
lib.rs
:
The library code for the futhorc
static site generator. The architecture
can be generally broken down into two distinct steps:
- Parsing posts from source files on disk (
crate::post
) - Converting the posts into output files on disk (
crate::write
)
Of the two, the second step is the more involved. It is itself composed of three distinct sub-steps:
- Building post pages
- Building index pages
- Rendering all pages to disk
Again here the second sub-step is the more involved, because we need to create groups of index pages for each tag and another group for the empty tag which corresponds to all posts. A group of index pages is referred to as an "index", and each index is paginated--converted into groups of pages based on a configurable number of posts per index page.
The third substep is pretty straight-forward: for each page, apply the template (either the post template or the index template) and write the result to disk.
Dependencies
~12MB
~299K SLoC