Go to file
zdenek-crha 5aadd3d4f2 Fix crash of trans() function called on absent translation key (#793)
Add method get_translation(lang, key) into Config struct that retrieves
translated term from parsed configuration or error when either
desired language or key is missing.

Use the new method in Trans struct implementing global Tera function
trans().

Add unit test to cover both happy and error path for translation
retrieval in both config and templates crate.
2019-09-03 10:51:41 +02:00
.github Update PULL_REQUEST_TEMPLATE.md 2019-05-07 07:18:26 -07:00
completions Update completions 2019-08-25 19:15:12 +02:00
components Fix crash of trans() function called on absent translation key (#793) 2019-09-03 10:51:41 +02:00
docs Process images on rebuild 2019-08-29 20:08:04 +02:00
src Add --drafts flag + rustfmt 2019-08-24 22:23:08 +02:00
sublime_syntaxes Build syntax dumps 2019-05-14 08:52:12 -07:00
sublime_themes Add one-dark syntax highlight theme (#784) 2019-08-24 19:06:41 +02:00
test_site Slugify given slugs as well 2019-08-04 16:17:02 +02:00
test_site_i18n Add lang to get_taxonomy & get_taxonomy_url 2019-08-15 22:14:53 +02:00
.editorconfig Create new project 2016-12-06 14:51:33 +09:00
.gitignore Merge pull request #567 from getzola/next 2019-03-25 20:26:07 +01:00
.gitmodules Point to https submodule instead of git 2018-11-15 17:12:36 +01:00
azure-pipelines.yml Min version is now 1.35 it seems 2019-08-05 22:43:32 +02:00
build.rs rustfmt 2018-10-31 08:18:57 +01:00
Cargo.lock Process images on rebuild 2019-08-29 20:08:04 +02:00
Cargo.toml Update changelog 2019-08-24 19:13:26 +02:00
CHANGELOG.md Process images on rebuild 2019-08-29 20:08:04 +02:00
CONTRIBUTING.md Adding GH specific issues/pr templates 2018-11-30 23:16:21 +01:00
Dockerfile Remove hardcoded DOCKER_TAG 2019-07-12 22:54:18 +02:00
EXAMPLES.md added https://uwe-arzt.de to examples (#736) 2019-07-02 21:31:19 +02:00
is-ehh.svg improve README comparison svgs 2019-04-09 14:36:55 -04:00
is-no.svg improve README comparison svgs 2019-04-09 14:36:55 -04:00
is-yes.svg improve README comparison svgs 2019-04-09 14:36:55 -04:00
LICENSE USe date range for license 2018-01-16 13:39:56 +01:00
netlify.toml Use zola 0.8 for the docs 2019-06-22 13:15:13 +02:00
README.md Simplify yes/ehh/no links in README.md 2019-06-25 02:33:50 +02:00
rustfmt.toml rustfmt 2018-10-31 08:18:57 +01:00
snapcraft.yaml Min version is now 1.35 it seems 2019-08-05 22:43:32 +02:00

zola (né Gutenberg)

Build Status Build status

A fast static site generator in a single binary with everything built-in.

Documentation is available on its site or in the docs/content folder of the repository and the community can use its forum.

Comparisons with other static site generators

Zola Cobalt Hugo Pelican
Single binary yes yes yes no
Language Rust Rust Go Python
Syntax highlighting yes yes yes yes
Sass compilation yes yes yes yes
Assets co-location yes yes yes yes
Multilingual site ehh no yes yes
Image processing yes no yes yes
Sane & powerful template engine yes yes ehh yes
Themes yes no yes yes
Shortcodes yes no yes yes
Internal links yes no yes yes
Link checker yes no no yes
Table of contents yes no yes yes
Automatic header anchors yes no yes yes
Aliases yes no yes yes
Pagination yes no yes yes
Custom taxonomies yes no yes no
Search yes no no yes
Data files yes yes yes no
LiveReload yes no yes yes
Netlify support yes no yes no
Breadcrumbs yes no no yes
Custom output formats no no yes no

Supported content formats

  • Zola: markdown
  • Cobalt: markdown
  • Hugo: markdown, asciidoc, org-mode
  • Pelican: reStructuredText, markdown, asciidoc, org-mode, whatever-you-want

ehh explanations

Hugo gets ehh for the template engine because while it is probably the most powerful template engine in the list, after Jinja2, it personally drives me insane, to the point of writing my own template engine and static site generator. Yes, this is a bit biased.

Zola gets ehh for the multi-language support as it only has a basic support and does not offer (yet) things like i18n in templates.

Pelican notes

Many features of Pelican are coming from plugins, which might be tricky to use because of version mismatch or lacking documentation. Netlify supports Python and Pipenv but you still need to install your dependencies manually.