diff --git a/README.md b/README.md
index e2ffcfbacc700eca931b82110e31f97704f23bd9..3796e0a95dcdfe6eabcfaa93d8b199def9039bf6 100644
--- a/README.md
+++ b/README.md
@@ -1,28 +1,34 @@
-# Zola theme based on w3.css framework
+# Site web de Duniter
 
-This zola theme is made to provide easy access to basic zola features with decent looking responsive layout. It also provied an opinionated methodology to customize it.
+Ce site est réalisé en Zola et sert de support technique pour présenter et utiliser le logiciel Duniter. Il présente également les concepts de bases d'une monnaie libre et du fonctionnement de la monnaie ğ1.
 
-## Usage
+## Utilisation
 
-This theme uses the "include" feature that is not supported by Zola theme manager. It is not made to work out-of the box on an existing site but rather to start a new one from scratch. So first step is to clone it.
+Pour modifier le site localement, veuillez d'abord cloner le dépôt :
 
 ```
-git clone
+git clone https://git.42l.fr/HugoTrentesaux/zola-duniter
 ```
 
-This theme uses Forkawesome as icon provider, you can get it as a submodule 
+La plupart des composants sont directement inclus, mais certains comme Forkawesome (pour les icones) sont disponibles comme sous-module git. Vous pouvez les ajouter avec :
 
 ```
 git submodule init
 git submodule update
 ```
 
-The theme includes a lot of files not as submodules (katex, fonts, demo images...) and weights 10Mo
-But do not panic, the output website will remain light!
+Après avoir installé [Zola](https://www.getzola.org/documentation/getting-started/installation/), lancez dans le dossier principal :
 
-SEO :
-titre de page
-meta description
-meta keywords
-robots.txt
-sitemap.xml (à compléter, l'URL doit être complète)
\ No newline at end of file
+```
+zola serve
+```
+
+et cliquez sur le lien [http://127.0.0.1:1111](http://127.0.0.1:1111) pour consulter le site localement (rafraîchi automatiquement en cas de modification).
+
+## Vue d'ensemble
+
+La plupart du contenu du site est situé dans dans le dossier `content` sous forme de fichiers Markdown (texte amélioré) avec des métadonnées en en-tête. Les fichiers statiques (images, documents) sont pour la plupart dans le dossier `static`, une grande partie étant dans le dossier `PELICAN`, issu de la migration du site initial. Le thème est constitué de fichiers html utilisant un langage de templates situés dans le dossier `templates`. Enfin, certaines feuilles de style sont rédigées en sass (css amélioré) dans le dossier `sass` alors que d'autres sont écrites en css et situés avec les fichiers statiques.
+
+## Contribuer
+
+Pas besoin d'être à l'aise avec `git`, `zola`, `html`, `css`, `javascript`, `markdown` pour contribuer simplement (même si ces connaissances sont nécessaires pour réaliser des modifications complexes). Il vous suffira de suivre le [guide adapté](./doc/README.md).
\ No newline at end of file
diff --git a/content/blog/2015-02-05-ucoin-at-the-5th-freedom-money-meeting.md b/content/blog/2015-02-05-ucoin-at-the-5th-freedom-money-meeting.md
index 41d176a9ff807d3f499ae864f68f5b3df98b946e..0fb7800ee21e57aa039cf5d16277f3f6bebe23d0 100644
--- a/content/blog/2015-02-05-ucoin-at-the-5th-freedom-money-meeting.md
+++ b/content/blog/2015-02-05-ucoin-at-the-5th-freedom-money-meeting.md
@@ -1,7 +1,7 @@
 +++
-aliases = [ "ucoin-at-the-5th-freedom-money-meeting",]
-date = 2015-02-05
 title = "uCoin aux 5èmes Rencontres des Monnaies Libres !"
+date = 2015-02-05
+aliases = [ "ucoin-at-the-5th-freedom-money-meeting",]
 
 [extra]
 thumbnail = "/PELICAN/images/calendar.svg"
diff --git a/doc/README.md b/doc/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..4b8bbefa4835dcacd65e6ad7843399e2f255ca8f
--- /dev/null
+++ b/doc/README.md
@@ -0,0 +1,20 @@
+# Guide de contribution
+
+Ce guide tout public va vous aider à réaliser une contribution sur le site web, en fonction de la nature de la modification que vous souhaitez apporter.
+
+## Introduction
+
+Le contenu du site est rédigé sous forme de fichiers texte avec une partie "en-tête" contenant des métadonnées au format TOML (`clé = "valeur"` par exemple), et une partie contenu rédigée en Markdown. Certaines pages spécifiques contiennent la métadonnées "template" qui pointe vers une page rédigée en html. Cela permet plus de souplesse dans la rédaction de la page, contre une légère perte en simplicité.
+
+```txt
++++
+en-tete
++++
+
+contenu
+
+```
+
+- [en lire plus sur l'en-tête](./en-tete.md)
+- [en lire plus sur le contenu](./contenu.md)
+- [en lire plus sur les pages custom](./custom.md)
\ No newline at end of file
diff --git a/doc/contenu.md b/doc/contenu.md
new file mode 100644
index 0000000000000000000000000000000000000000..26399ac9bebae6297fb4e7f4afdd2b96450cbcf5
--- /dev/null
+++ b/doc/contenu.md
@@ -0,0 +1,35 @@
+# Contenu
+
+Le contenu est rédigé au format [Markdown](https://daringfireball.net/projects/markdown/syntax) comme le forum. Il peut inclure du html, mais veuillez ne pas en abuser. Il peut contenir des shortcodes définis dans le template.
+
+## Liens internes
+
+Pour faire un lien interne, le mieux et d'utiliser un lien absolu préfixé d'un `@` sous la forme suivante :
+
+```
+[lien](@/wiki/fichier.md)
+```
+
+Cela permet de vérifier à la compilation qu'aucun lien interne n'est cassé.
+
+## Table des matières
+
+Pour insérer une table des matières, il suffit d'écrire `[TOC]` (table of contents) à l'endroit désiré.
+
+## Shortcodes
+
+Les shortcodes permettent d'insérer un bout de html réutilisable. Ils sont définis dans le dossier `templates/shortcodes`, un shortcode par fichier. Par exemple :
+
+```
+{{ youtube(id="Wl959QnD3lM") }}
+```
+
+sera remplacé par :
+
+```html
+<div class="embed">
+    <iframe src="https://www.youtube.com/embed/Wl959QnD3lM" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>
+</div>
+```
+
+Si vous pensez que votre code html peut être réutilisé, n'hésitez pas à écire un shortcode.
diff --git a/doc/custom.md b/doc/custom.md
new file mode 100644
index 0000000000000000000000000000000000000000..bf63c80b2179475ecd01fec05c2a7f93a569fa5d
--- /dev/null
+++ b/doc/custom.md
@@ -0,0 +1,5 @@
+# Page custom
+
+Pour écrire une page custom, veuillez vous inspirer du template `/templates/custom/skeleton.html`.
+Créez également une page markdown avec un en-tête spécifiant ce template et les métadonnées habituelles.
+Vous pouvez écire une feuille de style en sass dans le dossier `sass` ou en css dans le dossier `static` et l'inclure via le bloc `extrahead`.
\ No newline at end of file
diff --git a/doc/en-tete.md b/doc/en-tete.md
new file mode 100644
index 0000000000000000000000000000000000000000..4fa3b4e902f076dafddcc37ec617436b899e3aba
--- /dev/null
+++ b/doc/en-tete.md
@@ -0,0 +1,57 @@
+# En tête
+
+L'en-tête est au format [TOML](https://github.com/toml-lang/toml) qui est à la fois lisible par l'humain et la machine. La documentation complète est [disponible en anglais](https://www.getzola.org/documentation/content/page/#front-matter), mais je parle ici uniquement des champs spécifiques à ce site. Les champs sont optionnels pour la plupart, mais les remplir augmente la qualité de l'information présente sur le site.
+
+## Exemple
+
+Voici un exemple d'en-tête d'article:
+
+```toml
++++
+title = "uCoin aux 5èmes Rencontres des Monnaies Libres !"
+date = 2015-02-05
+description = "Le projet uCoin sera sous les projecteurs des 5èmes Rencontres des Monnaies Libres (RML ou Freedom Money Meeting - FMM) ces 4 et 5 Juin 2015 à Paris ! Cet événement sera une grande occasion pour nous de présenter le logiciel."
+aliases = [ "ucoin-at-the-5th-freedom-money-meeting", "ucoin-meeting"]
+template = "page.html"
+
+[taxonomies]
+authors = [ "cgeek",]
+tags = [ "RML", "RML5",]
+category = [ "Évènements",]
+
+[extra]
+thumbnail = "/PELICAN/images/calendar.svg"
++++
+```
+
+## Titre
+
+Le titre de la page sera indiqué dans les liens et dans la description des moteurs de recherche. Veuillez le choisir court et clair.
+
+## Date
+
+La date s'exprime au format AAAA-MM-JJ. Elle est importante pour les articles du blog et moins pour les simples pages de wiki.
+
+## Description
+
+La description s'affiche dans la page d'actualités pour les articles et apparaît dans les résultats de moteur de recherche. Une bonne longueur est entre deux et quatre lignes (150-300 caractères).
+
+## Alias
+
+Le champ `aliases` permet d'indiquer plusieurs liens pour une page. C'est utile pour faire des redirections (changement d'emplacement d'un contenu) ou générer un lien court.
+
+## Template
+
+Le champ `template` permet de spécifier un template personnalisé. Par défaut, les pages sont rendues avec le template `page.html` et les sections avec le template `section.html`. Si le but est uniquement der partager des fichiers, vous pouvez utiliser le thème `gallery.html`.
+
+## Taxonomies
+
+Cette sous-partie permet de définir des catégories (pour l'instant authors, tags, category) aidant à regrouper les articles concernant un même sujet ou écrit par un même auteur. Il n'y a pas vraiment de limites de mots à utiliser, mais veuillez vous renseigner sur les catégories existantes par exemple en vous rendant sur la page `/tags/`.
+
+## Extra
+
+Cette sous-partie permet de définir des paramètres spécifiques au thème. J'en fais la liste exhaustive ici :
+
+- `hide = true` permet de cacher la page des menus
+- `thumbnail = "/PELICAN/images/calendar.svg"` permet d'indiquer une illustration pour un article
+- `katex = true` permet de charger le code pour rendre les formules latex
\ No newline at end of file
diff --git a/templates/custom/skeleton.html b/templates/custom/skeleton.html
index 9c17505318bff5af27dec9eb276334c11ae0a18c..7b5959398959f74392f15e38000492020f090e52 100644
--- a/templates/custom/skeleton.html
+++ b/templates/custom/skeleton.html
@@ -3,7 +3,8 @@
 {% block title %}<title>Duniter | {{page.title}}</title>{% endblock title %}
 {% block description %}<meta name="description" content="{{ page.description }}">{% endblock description %}
 {% block keywords %}{% if page.taxonomies.tags %}<meta name="keywords" content="
-{%- for tag in section.taxonomies.tags %}{{tag}},{% endfor %}">{% endif %}{% endblock keywords %}
+{%- for tag in page.taxonomies.tags %}{{tag}},{% endfor %}">{% endif %}{% endblock keywords %}
+{% block extrahead %}<link rel="stylesheet" type="text/css" href="/custom.css">{% endblock extrahead %}
 
 {% block content %}
 <main id="accueil" class="w3-container">