Présentation

VenC est une application Python conçue pour Linux et similaire à Octopress/Jekyll ou Pelican pour gérer et créer vos blogs statiques via la console. Avec VenC, tout est fichier texte, pas de base de données. La configuration de chaque blog repose sur un unique et petit fichier YAML, les thèmes consistent en une poignée de templates HTML à modifier ou créer soi même, les publications quant à elles, se présentent sous la forme d'une partie YAML et d'une autre en Markdown ou en reStructuredText.

Les blogs statiques sont tout à fait adaptés aux réseaux de type Deepweb ou aux personnes qui veulent un contrôle total sur leur site sans s'embarrasser de CMS lourds et potentiellement vulnérables en terme de sécurité. Par ailleurs, l'extrême simplicité de l'organisation des sources des blogs issues de VenC garantit une prise en main rapide et efficace.

En outre, voilà ce que VenC propose :

Création de blog statique.

Balises VenC permettant une mise en page et une intégration de contenus avancés.

Possibilité de créer un agencement en nombre arbitraire de colonne.

Module Javascript de défilement infini.

Module Javascript de moteur de recherche distribué.

Les publications peuvent être organisées par catégories, sous-catégories, par période de dates et par chapitres

Possibilité de désactiver des fils de publications spécifiques.

Possibilité de définir des sous-répertoires par type de fils de publications.

Possibilité d'ajouter des métadonnées au blog et aux publications.

Publications triées par ordre chronologique ou par métadonnées. Ordre ascendant ou descendant.

Flux Atom et/ou RSS pour chaque fils de publications.

Permaliens.

Serveur HTTP simple.

La gestion et l'édition du blog peut-être faite entièrement en ligne de commande.

Rédaction des publications en Markdown, reStructuredText, ou HTML.

Exportation en ligne du blog via FTP.

Coloration syntaxique grâce à Pygments.

Support du protocole oEmbed.

Support de contenus audio et vidéo.

Installation via pip.

Des thèmes par défaut.

Petites particularités de VenC :

  • Il est conçu pour GNU/Linux spécifiquement.
  • C'est un logiciel libre sous licence GNU/GPLv3.

Quand ça tiens sur une disquette, c'est quand même mieux

En l'état, les chiffres nous disent que:

  • Le code source applicatif pèse moins de 300Ko
  • Les assets constitués pour l'essentiel des thèmes pèse moins de 900Ko.

Ce que ça signifie c'est qu'il y a peu de code. En particulier pour le code applicatif écrit en Python. Il y a au moins deux conséquences positives :

  • VenC est plus facile à maintenir parce qu'il y a moins de chose à lire et à comprendre.
  • La vitesse d'exécution bénéficie de la petite taille du code source, parce qu'il y a moins de code à exécuter et à interpréter.

Quand est-il des librairies tierces ?

Là dessus nous n'avons malheureusement pas le contrôle. Ce que nous pouvons faire cependant c'est réaliser des choix judicieux dans ce qu'il convient de réimplémenter et ce qu'il convient d'importer. Nous avons fait le choix de développer notre propre microcode pour le formatage des thèmes de VenC. VenC ne dépend donc pas d'un moteur de template tier comme Jinja et voit ses performances amélioriées dans la mesure où le moteur de template interne à VenC est fortement couplé avec le reste du code et a bénéficié d'un effort d'optimisations substantiel.

Dans les futurs version de VenC, pour minimiser le nombre de composant installé sur votre machine, nous ferons en sorte que certaines dépendances soient optionnels. Et ouais, parce qu'on est pas là non plus pour dégueulasser votre box !