Os templates são Jinja2 — HTML com dois tipos extra de parênteses. {{ page.title }} imprime um valor. {% if page.poster_image_url %} … {% endif %} é uma instrução: ciclos, condições e herança.
O base.html contém tudo o que as páginas partilham — o <head>, a navegação, o seletor de idioma, o rodapé, os scripts — com um único espaço vazio no meio. Todos os outros templates começam da mesma forma e preenchem esse espaço:
{% extends "base.html" %}
{% block content %} <h1>{{ page.title }}</h1> {{ page.content | safe }} {% endblock %}
Tudo o que se repete entre templates — um cartão de artigo, uma barra de paginação — vai para partials/ e é incluído com {% include "partials/post-card.html" %}.