Kitchen sink: how every element looks
A sample post showing headings, code, quotes, lists, tables and footnotes.
This sample post shows how each theme handles the elements a technical blog uses most. Body text should be comfortable to read for several minutes, with inline code that stands out without shouting, and links that are easy to spot.
A second-level heading
Paragraphs need room to breathe. Most of a post is plain prose, so the line length, size and spacing of body text matter more than anything else on the page.[1]
Simplicity is prerequisite for reliability.
— Edsger W. Dijkstra
A third-level heading
Here is some code:
use std::collections::HashMap;
fn word_counts(text: &str) -> HashMap<&str, usize> {
let mut counts = HashMap::new();
for word in text.split_whitespace() {
*counts.entry(word).or_insert(0) += 1;
}
counts
}And a shell one-liner:
zola serve --draftsLists and tables
- Unordered lists for loose collections
- Ordered lists when sequence matters
- Nested items when you must:
- but sparingly
- Write the post
- Read it out loud
- Cut a third of it
| Generator | Language | Single binary |
|---|---|---|
| Zola | Rust | yes |
| Hugo | Go | yes |
| Jekyll | Ruby | no |
That’s everything. The footnote below shows how the theme handles footnotes. Around 60–75 characters per line is the classic recommendation for comfortable reading. ↩