hexo, premiers pas
Après quelques heures passées sur la mise en place de ce site avec hexo, voici un premier article sur le principe de fonctionnement et comment démarrer.
Sur le principe, hexo est un outil de génération des pages nécessaires à la constitution d’un site statique. Pas de moteur sur le serveur web, tout est calculé en avance lors d’une phase qui ressemble à une compilation.
Le code est écrit en node.js, les articles ou pages utilisent une syntaxe très simple avec le format markdown, ensuite il est nécessaire d’avoir un thème et éventuellement quelques modules venant ajouter des fonctionnalités à hexo.
Si vous avez déjà travaillé avec un CMS (joomla, wordpress, drupal), vous ne serez pas dépaysé par les thèmes, une structure de fichier est proposée avec un découpage par typologie de bloc : en-tête, corps d’article, archive, pied de page… En revanche, pas d’éditeur ou d’intégré pour paramétrer tout cela, ici il faut ressortir son éditeur préféré et y aller à la main, mais pas de complexité majeure, on retrouve bien ses petits rapidement. Si vraiment vous souhaitez une solution d’écriture de vos articles en mode un peu plus visuel, il vous faudra installer le module hexo-admin (voir la liste des plugins pour l’ensemble des fonctionnalités additionnelles).
Après quelques minutes vous aurez créé un site avec quelques articles et pages, la visualisation peut s’effectuer en local via le petit serveur web intégré à la solution qui a l’avantage de prendre les modifications à la volée, sans génération. En revanche, pas de fonction avancée, ceci n’est donc pas la solution pour l’exposition des pages en production.
Pour ma part, j’ai poussé l’exercice jusqu’à prendre un hébergeur de site minimaliste et de ne mettre sur le stockage de celui-ci que les fichiers et une configuration du serveur apache via un .htaccess histoire de gérer un peu de sécurité, la compression, le cache, les expires…
Voilà pour un premier tour de piste, plus à venir sur les intrinsèques, les modifications apportées pour ce site et les petits soucis que j’ai dû contourner pour y parvenir.