éClaircie est un moteur de blog et de site personnel 100% statique et sans nuage (cloud-less). En effet, les moteurs statiques reposent souvent sur l'utilisation de services externes en ligne pour la gestion des commentaires (ex Disqus), des recherches (ex barre de recherche Google) ou des vidéo (Youtube). Ces services externes posent cependant des problèmes liés à la protection de la vie privée. Par exemple, ils peuvent être utilisés pour tracer les utilisateurs d'un site à l'autre, y compris sans connexion. De plus, les données étant stockées par le service externe, vous n'avez plus la maîtrise totale de vos données car celles-ci peuvent disparaître du jour au lendemain.
Le moteur éClaircie essaie de répondre à ces problèmes ; il s'agit en quelque sorte d'un moteur de site oueb 2.0 avec les technologies du 1.0. éClaircie est basé sur le générateur de documentation Sphinx. Voici ses principales fonctionnalités :
- syntaxe Restructured Text (ReST)
- multilingue, avec possibilité de langue "par défaut" (par exemple, un site avec les articles traduits en français et les autres en anglais)
- commentaires par mail
- moteur de recherche intégré (celui de Sphinx)
- thèmes multiples (sélection du thème par catégorie)
- support multimédia complet :
- galerie d'images avec miniatures
- lecteur audio (HTML5)
- intégration de vidéos Youtube (avec protection anti-pistage, Youtube n'est pas contacté tant que la vidéo n'est pas lue)
- flux RSS
- génération de contenu possible à l'aide de scripts Python
- dissimulation des emails
- logiciel libre (licence GNU GPL v3)
Comparé à d'autres moteurs de blog statiques, tel que Pélican, éClaircie est basé sur Sphinx, ce qui permet de réutiliser le moteur de recherche de Sphinx, et aussi de n'avoir qu'un seul moteur ReST à apprendre (si vous utilisez déjà Sphinx pour écrire de la documentation, chaque moteur ayant ses subtilités propres). éClaircie permet aussi les commentaires par mail.
Comparé à d'autres moteurs de blog basés sur Sphinx, tel que Tinkerer, éClaircie agit à la fois comme préprocesseur et comme extension de Sphinx. Cette architecture particulière permet le support multilingue. De plus, éClaircie ne recontruit que les pages modifiées du blog, alors que Tinkerer reconstruit tout de zéro à chaque fois, ce qui peut être long pour des sites volumineux.
La première version d'éClaircie (0.1) est disponible ici : https://pypi.python.org/pypi/eClaircie
Site oueb d'éClaircie : http://www.lesfleursdunormal.fr/static/informatique/eclaircie/index_fr.html
Un exemple de site avec éClaircie : http://www.lesfleursdunormal.fr
# nimage
Posté par alienus (site web personnel) . Évalué à 1.
Salut,
J'utilise Pelican mais ceci a l'air très chouette.
Y'a t il moyen de voir à quoi ressemble les thèmes inclus ou doit on s'attendre à devoir triturer la bête ?
++
[^] # Re: nimage
Posté par Jiba (site web personnel) . Évalué à 3.
Pour l'instant il n'y a que 2 thèmes disponibles, que l'on peut voir ici et là :
http://www.lesfleursdunormal.fr/static/informatique/index_fr.html
http://www.lesfleursdunormal.fr/static/poesies/index_fr.html
[^] # Re: nimage
Posté par feth . Évalué à 2.
Je lis dans la page de présentation que les commentaires sont gérés au moyen du courriel. Comment est-ce que cela se passe pour les utilisateurs et modérateurs ?
[^] # Re: nimage
Posté par Jiba (site web personnel) . Évalué à 6.
En fait c'est très simple : les commentaires arrivent dans la boîte mail, avec un code particulier dans le champ "To" qui permet de les identifier (et typiquement de les trier dans un dossier à part). Ensuite, lors de la prochaine mise à jour du site, les nouveaux messages dans ce dossier sont analysés pour mettre à jour les commentaires. Il est possible de modérer les commentaires en supprimant les mails correspondant.
Après, si l'on veut que la publication soit automatique, il faut automatiser la réception des mails et la mise à jour du site par exemple dans le cron.
[^] # Re: nimage
Posté par feth . Évalué à 2.
L'auteur (Bernhard Scheirle) me signale son greffon pelican qui fonctionne de la même façon, d'ailleurs.
[^] # Re: nimage
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 3.
Ou par exemple en lançant la génération du site à la réception d'un message. Pour éviter des problèmes liés au temps de génération du site (s'il est généré trop vite, le message ne sera peut-être pas encore complètement écrit dans la boîte aux lettres correspondante), l'idéal serait d'avoir une commande de génération capable de prendre un nouveau commentaire en entrée standard : à la réception d'un nouveau message avec tel sujet, on le livrerait à la commande de génération.
[^] # Re: nimage
Posté par feth . Évalué à 2.
Avec inotify tu peux attendre que le descripteur de fichiers soit fermé. J'utilise incron en production depuis un an, ça fonctionne b
[^] # Re: nimage
Posté par JGO . Évalué à 2. Dernière modification le 16 juin 2014 à 15:19.
Salut,
Est-ce que ton projet supporte les formules TeX et la coloration syntaxique pour le code ?
Sinon pour les autres moteurs j'en étais resté à :
[^] # Re: nimage
Posté par Jiba (site web personnel) . Évalué à 3.
Pour la coloration syntaxique, oui (c'est basé sur Sphinx qui sert normalement à faire de la doc de logiciel et de librairie de code). Et pour les formules TeX, on peut utiliser le plugin "mathbase" de Sphinx. C'est aussi l'intérêt d'avoir réutiliser Sphinx !
# installation sous windows
Posté par fabricius . Évalué à 1.
Hello,
Bravo pour ton projet. J'aime assez l'idée que ça soit statique. Je l'installerais bien sur mon PC du boulot, est-ce que ça peut s'installer sur du windows ?
[^] # Re: installation sous windows
Posté par Jiba (site web personnel) . Évalué à 2.
A priori non : j'ai utilisé des liens symboliques à plusieurs reprises pour éviter d'avoir à recopier des fichiers. Il y a aussi le problème des / et des \, que j'ai laissé de côté car pas facile à gérer avec Sphinx, qui je crois attends des / mêmes sous windows…
[^] # Re: installation sous windows
Posté par Nicolas (site web personnel) . Évalué à 3.
On peut faire des liens symboliques sous windows (commande mklink). C'est un peu galère au niveau des permissions : l'utilisateur doit posséder la permission adéquate et ne pas être admin (pas réussi à comprendre pourquoi).
Et pour les / au lieu de \ ça doit pouvoir se régler aussi.
[^] # Re: installation sous windows
Posté par Jiba (site web personnel) . Évalué à 1.
Ça fait un moment que j'ai arrêté windows :), donc pour les liens je ne savais pas… Les /, ça peut effectivement se régler (mais sans machine windows, difficile de tester).
[^] # Re: installation sous windows
Posté par Nicolas (site web personnel) . Évalué à 1.
Moi aussi et je suis resté bloqué à windows 98 !! Mais j'ai eu besoin de faire des liens symboliques pour un collègue !
# Commentaires
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 7.
J'aime bien l'idée des commentaires par courrier électronique, ça me fait penser au fonctionnement du BTS Debian. Belle idée !
# Tuto?
Posté par devnewton 🍺 (site web personnel) . Évalué à 2.
éClaircie a l'air vraiment bien, mais ça manque un peu de documentation. Un petit tutorial aiderait beaucoup à se démarrer.
Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.
[^] # Re: Tuto?
Posté par Jiba (site web personnel) . Évalué à 1.
Merci :)
Pour l'instant il n'y a pas beaucoup de doc ; en fait les seul éléments disponibles (hormis le code source !), c'est un site d'exemple qui est inclut avec les sources et qui montre les principales directives (celle qui sont ajoutées à ReST pour gérer les vidéos, les galleries photos, les langues, etc).
Une peut trouver une version en ligne de ce mini site ici : http://www.lesfleursdunormal.fr/static/informatique/eclaircie/example_site/index_fr.html
[^] # Re: Tuto?
Posté par devnewton 🍺 (site web personnel) . Évalué à 2.
J'ai trouvé un petit bug sur les galeries avec firefox: quand je clique sur l'un des boutons pour voir l'image suivante ou précédente, cela ferme la galerie.
Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.
[^] # Re: Tuto?
Posté par Jiba (site web personnel) . Évalué à 1.
C'est bizarre car j'ai justement testé ça sur Firefox… Est-ce que tu es sûr qu'il y a bien une image suivante ou précédente ? Lorsqu'il n'y a plus d'image à afficher, la galerie se termine quand on clique sur l'un des boutons "<" ou ">" (peut-être que ça serait mieux de cacher les boutons dans ces cas-là !).
[^] # Re: Tuto?
Posté par devnewton 🍺 (site web personnel) . Évalué à 2.
Ah oui tiens c'est ça!
Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.
[^] # Re: Tuto?
Posté par Jiba (site web personnel) . Évalué à 1.
Je viens de corriger ça : désormais les flèches sont cachées lorsqu'il n'y a pas d'image précédente / suivante.
Merci pour m'avoir permis d'identifier ce problème :)
# question sur le moteur de recherche
Posté par goeb . Évalué à 3.
Comment fonctionne ce moteur de recherche ? en javascript uniquement ?
Est-ce qu'il utilise un index statique ?
Si c'est dynamique comment ça fonctionne ? Le javascript va faire une recherche parmi une liste statique de pages ?
[^] # Re: question sur le moteur de recherche
Posté par chimrod (site web personnel) . Évalué à 3.
Il faudrait pouvoir charger les données dans une base de sql en mémoire (par exemple via sqlite recompilée en javascript) et faire les recherches à travers cette base…
----> []
[^] # Re: question sur le moteur de recherche
Posté par Jiba (site web personnel) . Évalué à 3.
D'après ce que j'ai pu voir, tout est en javascript. Sphinx indexe les pages lors de leur compilation, et génère l'index (qui est donc statique). Il y a aussi un répertoire avec les sources (au format ReST) des pages qui servent pour afficher des extraits.
Ce moteur de recherche est entre autre utilisé pour la doc de Python et c'est assez pratique : ça permet de rechercher dans la doc même quand on n'a pas accès à Internet.
[^] # Re: question sur le moteur de recherche
Posté par benoar . Évalué à 3.
Pour aller voir dans les entrailles, en prenant l'exemple de la doc de python :
https://docs.python.org/2/searchindex.js
(attention, ce JS est très gros puisqu'il contient tous les mots de la doc python avec les endroits de leur(s) occurrence(s))
C'est effectivement plutôt bien fait, même si j'ai souvenir d'avoir vu un « bug » qui fait que le contenu des titres n'est pas indexé, il me semble.
# Performances ?
Posté par Denis Bernard (site web personnel) . Évalué à 2.
Je me suis penché aussi sur la question des moteurs de blog statiques et mon blog est propulsé par fBlog, un logiciel de mon cru. J'ai actuellement 319 billets et leur régénération prend moins d'une seconde.
J'ai conçu mon moteur pour qu'il puisse satisfaire un blogueur intensif qui posterait un billet par jour pendant 50 ans. Au départ, j'avais envisagé moi aussi une routine pour ne régénérer que le strict nécessaire. Mais quand j'ai vu que ma machine (5 ans d'âge, avec HDD ordinaire) tenait la charge (moins d'une minute de traitement pour ce blogueur fou), je ne me suis pas embêté… Surtout, qu'avec un peu plus d'effort sur l'algorithmique, je devrais pouvoir aller encore plus vite. En fait, la limitation en vitesse est le système de fichier (au niveau de l'option de la journalisation choisie) et le type mémoire de masse (SSD vs HDD).
je vois que les moteurs de blog statiques intéressent encore un peu de monde ! Ça me motive donc pour que j'active le codage de ma bestiole.
[^] # Re: Performances ?
Posté par Jiba (site web personnel) . Évalué à 2.
Pour ce qui est des performances, l'essentiel du temps de compilation avec eClaircie est en fait pris par Sphinx. Je n'ai pas creusé plus pour savoir à quoi il correspond, peut-être que l'indexation pour le moteur de recherche est coûteuse en temps ?
Les blogs statiques restent la meilleure manière de garder un contrôle total sur ses données… donc ça m'intéresse !
# "Youtube n'est pas contacté tant que la vidéo n'est pas lue"
Posté par antistress (site web personnel) . Évalué à 4.
Salut,
je me demandais comment cette fonctionnalité était rendue possible et si ça pouvait être repris sur n'importe quel CMS (j'utilise PluXml)
Merci
[^] # Re: "Youtube n'est pas contacté tant que la vidéo n'est pas lue"
Posté par Jiba (site web personnel) . Évalué à 4. Dernière modification le 14 juin 2014 à 12:49.
En fait, tant que la vidéo n'est pas lu, Youtube affiche simplement une image fixe. Il suffit donc de récupérer cette image fixe de youtube lors de la compilation du site, de l'afficher, et de faire en sorte que lorsque l'on clique dessus la "vrai" vidéo Youtube soit affiché et lu directement (pour ne pas avoir à cliquer une seconde fois). Le résultat est très proche d'une vidéo Youtube intégrée "normalement", sauf que cela évite de contacter Youtube tant que la vidéo n'est pas lue—et cela empêche donc Youtube d'utiliser la vidéo pour tracer l'utilisateur.
Je pense que ça doit pouvoir être repris sur n'importe quel CMS sans trop de difficulté. Si tu veux jeter un coup d'oeil au code, c'est dans le fichier sphinx_ext.py vers la ligne 125.
[^] # Re: "Youtube n'est pas contacté tant que la vidéo n'est pas lue"
Posté par antistress (site web personnel) . Évalué à 1. Dernière modification le 14 juin 2014 à 18:09.
merci, mais si vous récupérez l'image sur le site YouTube lors de la construction de la page, qu'est-ce que ça change par rapport au comportement par défaut ?
[^] # Re: "Youtube n'est pascontacté tant que la vidéon'est pas lue"
Posté par Juke (site web personnel) . Évalué à 3.
C'est recupéré qu'une fois, ça evite de requeter chez google à chaque GET.
[^] # Re: "Youtube n'est pas contacté tant que la vidéo n'est pas lue"
Posté par AgentSteel (site web personnel) . Évalué à 5.
Les visiteurs ne seront pas pistés par Youtube lors de l'affichage de la page du blog.
[^] # Re: "Youtube n'est pas contacté tant que la vidéo n'est pas lue"
Posté par Jiba (site web personnel) . Évalué à 2.
Voilà, c'est exactement ça. Et la récupération est faite par le programme, qui ne gère pas les cookies (donc le programme n'est pas pisté non plus, ou alors seulement par IP).
[^] # Re: "Youtube n'est pas contacté tant que la vidéo n'est pas lue"
Posté par antistress (site web personnel) . Évalué à 0. Dernière modification le 15 juin 2014 à 14:29.
oui, c'est ce que je me disais, ça ne change rien au pistage par l'IP vu qu'il y a requête vers YouTube ? Ça change que pour le pistage par les cookies ?
La seule solution serait d'afficher une image générique propre ? genre https://t2.gstatic.com/images?q=tbn:ANd9GcRBCjLJcOG30c_RpIsjdpOFT-SMSym21REu7HyoKqwLJohix3Gssg
[^] # Re: "Youtube n'est pas contacté tant que la vidéo n'est pas lue"
Posté par Jiba (site web personnel) . Évalué à 5.
Pour les IP, Youtube n'obtient que l'IP de la machine qui compile le site, et celles des utilisateurs qui regardent la vidéo, au lieu de recevoir celles de tous les utilisateurs qui passent sur le site. Cela présente donc une amélioration, même si ça n'est pas parfait. Pour l'IP de la machine qui compile le site, ça n'est pas très gênant car ça ne représent qu'une seule IP (la mienne) et en général les vidéos que je vais intégré sont les miennes (donc Youtube a déjà mon IP en tant que créateur de la vidéo !). Pour les IP des utilisateurs qui regardent la vidéo, c'est plus dérangeant, malheureusement il me semble difficile de faire autrement si c'est Youtube qui héberge la vidéo !
[^] # Re: "Youtube n'est pas contacté tant que la vidéo n'est pas lue"
Posté par antistress (site web personnel) . Évalué à 2.
Ok, je comprends. En effet, c'est une amélioration intéressante, merci !
# merci pour la gallery!
Posté par camalot . Évalué à 1.
J'ai pas besoin du moteur de blog, je fais tout à la main, mais merci pour la gallery d'image en JS tout simple !
Je cherchais ça depuis longtemps passivement et cela remplit son boulot.
Merci!
[^] # Re: merci pour la gallery!
Posté par Jiba (site web personnel) . Évalué à 1.
De rien :)
# Plus d'information sur la gestion des commentaires ?
Posté par gasche . Évalué à 2.
Je gère un site web statique et j'utilise effectivement Disqus pour les commentaires. Je regrette les problèmes de vie privée (et le fait que ce ne soit pas du logiciel libre), mais je n'ai pas trouvé de solution qui:
Je suis intéressé par l'approche "par commentaires" que tu proposes, mais sur ton blog montré en exemple… personne n'a posté de commentaire. Je me pose donc un peu des questions sur comment ça fonctionne, et qu'est-ce que ça donne en pratique pour les utilisateurs.
Je me pose aussi des questions sur l'utilisabilité du "lien mail" pour les personnes qui n'utilisent pas de client mail, mais un webmail. Est-ce qu'ils peuvent être envoyés vers leur webmail quand ils cliquent sur le lien ? (J'imagine que sur les téléphones ça marche ?)
[^] # Re: Plus d'information sur la gestion des commentaires ?
Posté par claudex . Évalué à 3.
Il existe des extensions pour ça mais rien de natif je crois.
« Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche
[^] # Re: Plus d'information sur la gestion des commentaires ?
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 3.
Si, moi il me semble. S'il n'apparaît pas, c'est que ça ne marche pas, ou que la génération n'a pas été faite.
[^] # Re: Plus d'information sur la gestion des commentaires ?
Posté par gasche . Évalué à 2.
J'ai pu rater le commentaire, c'est où ? Ça apparaît chez toi ?
[^] # Re: Plus d'information sur la gestion des commentaires ?
Posté par Jiba (site web personnel) . Évalué à 1.
Bizarre, je n'ai pas reçu de mails correspondant à des commentaires… Est-ce que quelques personnes pourraient réessayer ? merci d'avance :)
[^] # Re: Plus d'information sur la gestion des commentaires ?
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 3.
Je crois que j'ai dû essayer en rêve… Je vais recommencer pour de vrai. :-)
[^] # Re: Plus d'information sur la gestion des commentaires ?
Posté par Jiba (site web personnel) . Évalué à 1.
Ce coup-ci je l'ai bien reçu… Le temsp de corriger un bogue dans le décodage des emails et ça devrait être en ligne d'ici ce soir :)
[^] # Re: Plus d'information sur la gestion des commentaires ?
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 3.
Attends de voir le prochain que j'enverrai en PGP/MIME…
[^] # Re: Plus d'information sur la gestion des commentaires ?
Posté par Jiba (site web personnel) . Évalué à 2.
C'est marrant ça ; mon moteur de blog précédent (Hardblog) fonctionnait entièrement par email (y compris pour l'écriture des articles), et l'auteur était authentifié par GPG. L'idée était sympa, mais un peu laborieuse en pratique (en particulier lorsqu'on voulait modifier un article !).
[^] # Re: Plus d'information sur la gestion des commentaires ?
Posté par Jiba (site web personnel) . Évalué à 1.
Voilà normalement c'est bon :)
[^] # Re: Plus d'information sur la gestion des commentaires ?
Posté par jean-michel.bertrou.eu . Évalué à 2. Dernière modification le 16 juin 2014 à 14:11.
C'est un point tellement capital que les bons navigateurs intègrent par défaut la gestion des liens mailto: par un webmail
Exemple avec Chrome et son gestionnaire de protocoles
[^] # Re: Plus d'information sur la gestion des commentaires ?
Posté par Jiba (site web personnel) . Évalué à 1.
Pour ce qui est de la maintenance, les commentaires par emails demandent généralement de recompiler le site en cas de nouveaux commentaires. C'est un inconvénients ou un avantage (pour modérer), selon. On peut le contourner en automatisant la récupération des emails et la recompilation, à intervalle régulier (mais ça demande une machine toujours allumé, donc presque un serveur… on s'éloigne du blog statique).
Pour le spam, si les commentaires arrivent par mails, ils peuvent être filtrés par spamassassin et compagnie. De plus, les emails peuvent être protégées dans la page web. Dans éClaircie, il y a une triple protection des emails : utilisation d'entités XML dans l'adresse, découpage de l'adresse en plusieurs morceaux qui sont recollés par du javascript, et affichage de l'email seulement si la page est visualisée à partir de son adresse d'origine (si la page est téléchargée, les adresses sont cachées !).
Pour le lien mail, les navigateurs peuvent prendre en charge certains fournisseurs de boîtes aux lettres (en tout cas Firefox le fait, je crois qu'il y a Yahoo et GMail qui sont proposés par défaut entre autres).
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.