Skip to content
Olivier DOSSMANN edited this page Jan 19, 2016 · 5 revisions

Expression des besoins suite à l'utilisation de Makefly

Liste des fonctionnalités courantes ou souhaitées

  • page d'accueil (avec derniers billets) => on devrait pouvoir choisir QUOI afficher sur la page d'accueil parmi la liste des billets du blog, un fichier statique défini ou encore le début de la documentation/wiki
  • Tri ascendant/descendant des billets de la page d'accueil avec une limite personnalisable. On peut ainsi afficher :
    • la liste des derniers billets
    • la liste des premiers billets
    • limiter le nombre afficher parmi ces deux dernières
    • réordonner le résultat suivant un tri ascendant/descendant
  • menu principal personnalisable : permettre d'ajouter automatiquement tous les billets statiques ? (exemple du site vitrine) ou bien lister les billets à afficher en menu principal ? Ou encore un menu secondaire pour afficher la liste des fichiers statiques ?
  • liste des billets avec pagination
  • page d'à propos non obligatoire (menu s'adapte pour la proposer si elle existe, choix du nom de la page d'à propos, etc.) Idée : faire de la page d'à propos un plugin pour voir à quel point il est possible d'utiliser les plugins pour afficher cette simple page comme d'une fonctionnalité ?
  • Nuage de balises/tags, de manière optionnelle (soit on liste les balises par ordre alphabétique, soit un nuage de tags)
  • Gestion des billets (ajout, suppression, modification des méta-données, y compris la date de publication). Idée : faire un autre outil de gestion des billets ? bm = blog manage ?
  • Flux RSS
  • Mots-clés par page (keywords) pour un meilleur référencement de chaque page
  • Personnalisation de l'URL (une sorte d'expression régulière (comme les fichiers MP3) pour définir comment les billets de blogs ou les pages wiki, doc, etc. doivent être affichées). Example : "%postdir%/%year%/%month%/%post_title%". Pareil pour le format de date !!
  • Format de date personnalisable
  • Format de date personnalisable via expression régulière, comme pour la personnalisation de l'URL. Example : "%year%/%month%/%day%"
  • Liens permanent pour chaque billets => comme le site généré est statique, ça semble assez logique…
  • Billets persistants (pages statiques). Dossier pages actuellement.
  • Choix de la date de publication d'un billet :
    • Permet de publier dans le passé ou le futur
    • Permet indirectement de prévoir des billets à l'avance
  • État d'un billet :
    • brouillon : ne sera pas publié, même si la date est dans le passé. Si on regénère le blog, ça ne génèrera pas le billet
    • prêt-pour-publication : billet publié dans le résultat
    • abandonné : billet qui ne sera pas pris en compte pour le résultat. Sorte de billet archive en local.
  • Traduction du blog résultant :
    • Anglais
    • Français
  • Traduction du logiciel en ligne de commande :
    • Anglais
    • Français
  • Fichiers statiques : il est possible de définir un ensemble de fichiers que nous voudrions voir apparaître dans le blog résultant
  • Système de template simple (l'actuel est bien trop compliqué). À adopter : lua-resty-template
  • Système de commentaire (Isso me semble très bien comme outil Libre, installable soi-même, etc.)
  • Badge StatusNet (Cf. Badge ELI
  • Sauvegarde de son blog : sauve l'ensemble des dossiers et fichiers nécessaires pour refaire fonctionner son blog avec une autre version de Makefly
  • Sauvegarde contenant des informations sur la version du Makefly que nous avons => permettrait de pouvoir faire des migrations entre plusieurs versions de Makefly !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  • Système de migration entre les versions
  • Outil de publication basique. À développer plus encore ?
  • Outil de création de thème. Reste simple pour le moment (car copie le dossier thème de base). Une bonne documentation et un système de template plus intuitif devrait améliorer les choses.
  • Système d'inclusion d'une entête et/ou d'une enqueue personnalisable sur chaque page. Par exemple pour l'utilisation de l'affichage d'un bandeau publicitaire ou d'un texte de remerciement en fin de chaque page du blog.

Comparaison avec Hugo

Hugo est un générateur de site statique écrit en Go. En lisant la documentation et en testant l'outil, je crois avoir trouvé une solution aux besoins exprimés ci-avant.

Élements qui répondent au besoin :

  • Hugo est un binaire installable par simple copier/coller. Ce qui facilite son intégration dans les distributions, son lancement, son utilisation, etc. C'était souhaité par Makefly pour une version future. C'est donc un PLUS par rapport à Makefly
  • L'avantage du binaire fait que le dossier complet de notre site Hugo peut-être mis sous Git. On a ainsi une sauvegarde et un historique de notre site. Ce qui rend la fonctionnalité/commande backup de Makefly inutile. C'est un PLUS par rapport à Makefly
  • Les statistiques Github de la version 0.15 d'Hugo montrent que le nombre de contributeurs est à 87 avec 377 contributions. Ce qui dépasse largement le nombre vu sous Makefly. On peut estimer que c'est un gage de pérénité. C'est un PLUS par rapport à Makefly.
  • Utilise le format Markdown, comme Makefly. C'est une ÉQUIVALENCE.
  • Le langage Markdown n'est pas le seul. D'autres sont possibles. C'est un PLUS par rapport à Markdown.
  • le serveur embarqué permet de visualiser le résultat avant de l'envoyer sur un serveur. Cela évite des problèmes entre adresses relatives/absolues avant envoi. C'est un PLUS par rapport à Makefly
  • rapide, bien plus que Makefly du fait que ce soit écrit en Go, donc peut lancer plusieurs processus pour achever son travail. C'est un PLUS par rapport à Makefly
  • propose des meta-tags personnalisables. C'était une fonctionnalitée souhaitée sous Makefly. C'est un PLUS par rapport à Makefly
  • propose comme meta-tags categories et tags, tout comme Makefly. C'est une ÉQUIVALENCE.
  • propose un système permettant de générer à la fois un site façon documentation, blog ou encore site vitrine ; des fonctionnalités fortement souhaitées dans Makefly. Il utilise ce qu'il appelle la taxonomie (catégories et sous-catégories d'éléments). C'est un PLUS par rapport à Makefly.
  • un dossier static existe pour délivrer du contenu statique, comme Makefly. C'est une ÉQUIVALENCE.
  • plusieurs systèmes de templates sont disponibles, rendant facile la création de ces derniers avec des conditions et des boucles. C'est un PLUS par rapport à Makefly
  • la pagination est possible sous Hugo, comme Makefly, mais avec possibilité de le paramétrer et de l'ajouter pour les sections et taxonomies. C'est un PLUS indéniable à Makefly
  • plusieurs systèmes de commentaires utilisant Javascript sont possible, tout comme Makefly finalement. C'est une ÉQUIVALENCE
  • la fonctionnalité de Sommaire sur une page donnée est possible. Une fonctionnalité souhaité sous Makefly, notamment en ajoutant des ancres HTML aux titres contenus dans l'article. C'est un PLUS par rapport à Makefly
  • un menu peut-être généré, contrairement à Makefly. C'est un PLUS par rapport à Makefly
  • Hugo ne gère pas spécialement plus les billets que Makefly. C'est une ÉQUIVALENCE
  • En revanche, Hugo ajoute une notion de brouillon afin de publier ou non des articles. C'est une fonctionnalité souhaitée de Makefly. C'est donc un PLUS par rapport à Makefly
  • Hugo et Makefly proposent une page d'à propos. C'est une ÉQUIVALENCE
  • Avec l'ajout des shortcodes sous Hugo, on a la possibilité d'étendre les fonctionnalités Markdown en générant du HTML spécifique suivant le shortcode et ses arguments. Utile pour inclure des vidéos, des présentations ou tout simplement un lien vers une page de son propre site. Sous Makefly la seule chose qui existe est l'utilisation de variables pour faire des liens vers des pages du site. C'est donc un PLUS par rapport à Makefly
  • Hugo propose un flux RSS, comme Makefly. Mais propose aussi un flux suivant la taxonomie. Il est donc possible d'avoir un flux RSS par section. Comme sous Nanoblogger à l'époque. C'est donc un PLUS par rapport à Makefly
  • On peut personnaliser l'URL de son billet, etc. en utilisant les sections, la taxonomie ou encore un paramètre (metadata) du billet. C'est donc un PLUS par rapport à Makefly
  • Permalink est présent dans les deux. C'est donc une ÉQUIVALENCE
  • Hugo peut générer un sitemap, contrairement à Makefly. C'est un PLUS par rapport à Makefly
  • Page 404 personnalisable, comme Makefly. C'est une ÉQUIVALENCE.
  • Choix de la date pour un billet donné, comme Makefly, c'est une ÉQUIVALENCE
  • Contenu multilangue est possible sous Hugo, d'une manière plus poussée que Makefly. C'est un PLUS par rapport à Makefly
  • Hugo ne permet pas d'avoir son aide en ligne de commande en autre chose qu'en anglais. C'est un MOINS par rapport à Makefly. Mais ce n'est pas si important
  • Comme ELI est en Javascript, il s'installe autant sous Hugo que sous Makefly. C'est une ÉQUIVALENCE
  • Hugo, comme Makefly, permettent de générer un template. C'est une ÉQUIVALENCE
  • Avec le système de templates partiels d'Hugo, la fonctionnalité d'introduction et de conclusion incluts dans Makefly est induite. C'est une ÉQUIVALENCE
  • Du fait d'une large communauté, les systèmes d'imports depuis Hugo se multiplient. Il ne reste plus qu'à en faire un pour migrer depuis Makefly. C'est un PLUS par rapport à Makefly

Conclusion

La comparaison avec Hugo des fonctionnalités présentes et envisagées sous Makefly ne laisse aucune erreur : il serait plus intelligent de passer à Hugo comme gestionnaire de site statique.

Cependant cela me demande :

  • la création d'un script d'import : makefly2hugo
  • le passage de mon site principal en Hugo
  • le test d'Hugo avec un template spécifique pour voir si on peut générer "PorteAil" avec
  • migrer mon blog vers mon site principal (lui-même migré en Hugo)
  • fusionner mon microblog (Tergiversions) en Hugo