Gutenberg 0.1.3: themes are in
Gutenberg is a powerful static site engine inspired by Hugo but simpler to use. You can build pretty much any kind of static site with it using markdown:
- a basic blog
- a landing site
- a knowledge base
- a gitbook
- a documentation site
- all of the above combined
You can download built binaries from the Github releases page.
What's new🔗
The highlight of this release is, as you might have guessed from the title of the post, themes.
Themes are a staple of static site engines: you can use one to get started with your site and only tweak little bits.
As a proof of concept I have ported a famous theme from Jekyll: hyde.
Since Tera, the template engine used in Gutenberg,
supports multiple levels of inheritance, using a theme is almost seamless.
For example, if you want to change the about part of the sidebar of Hyde, it is as easy as adding a index.html
in your
templates
folder with the following:
{% extends "hyde/templates/index.html" %}
{% block sidebar_about %}
Something else
You can of course render the theme block
first by calling {{ super() }} if wanted.
{% endblock sidebar_about %}
The architecture chosen for themes is the same as Hugo: you have a themes folder in which you download your
themes (via git clone
or copy/paste) and tell Gutenberg which one to load by adding a theme = "theme_name"
line in your config.toml
.
This is the first pass at themes so there are probably features missing or bugs laying around but it's ready to be used!
What's next🔗
The main focus now will be to get a site up and running for Gutenberg and to put it in various package managers. If someone reading this is on Mac and has some time to spare, I would love to get it on Homebrew but I don't have access to one.
Lastly, the i18n RFC is open. If you are interested in multi-lingual sites, please have a look and comment!