24/12/2017: Le test de GRAV

test grav
Grav est un CMS de type "flat-file", sans base de données php-mysql. Récent, simple et léger comme la plupart des CMS de ce type, c'est une proposition tentante pour un nouveau site. Le test:
Qu'est ce que Grav ?

Historique: "Grav" vient de "gravity", mais n'est pas inspiré du film catastrophe spectaculaire en apesanteur montrant Sandra Bullock et George Clooney et mis en scène par Alfonso Cuarón (2013) d'après ses créateurs. C'est un simple nom de code initial et provisoire qui est resté. Comme l'indique la documentation officielle, le CMS utilise les dernières et meilleures technologies du genre comme:
L'équipe derrière ce CMS n'est pas néophyte: Rocket Theme s'est spécialisée pendant longtemps dans la personnalisation de templates pour Joomla, Magento, et Wordpress, avant de développer un pont ambitieux avec Wordpress, appelé Gantry 5. C'est ce framework qui permet d'ailleurs la construction du CMS Grav. Il est défini comme un CMS "Hybride", "Flat-File" dans le sens où il se sert de php. Les CMS statiques sont en général en html et ont comme triple avantage une faible consommation de ressources serveur et une sécurité quasi parfaite, ainsi qu'une sauvegarde plus simple. Grav utilise notamment des fichiers au format Yml ou en format json pour ses configurations. Le seul inconvénient est une vitesse d’écriture de fichiers plus lente que pour une base de données. Il offre aux développeurs et linuxiens la possibilité d'utiliser le CMS en ligne de commande également. Enfin Grav est un CMS open source et ses déjà nombreux templates et plugins sont également gratuits avec une communauté croissante, la plupart basés sur Bootstrap ce qui est en soit attendu, mais aussi toujours une bonne nouvelle pour plus de flexibilité. Alors souhaitons à ce CMS de se faire une place au soleil dans les années à venir.

Installation de GRAV:

Très simple. Il suffit d'envoyer les fichiers sur le ftp et de se logger sur la page par défaut pour l'installation, en remplissant les quelques données de base: Nom d'utilisateur, nom réel, nom d'admin, mail et mot de passe. Et pour ceux ayant accès aux lignes de commande, en deux lignes de quelques termes c'est fait.

Comme la plupart des CMS, Grav fournit une page "démo" à personnaliser ou supprimer. Grav explique que contrairement aux CMS habituels à la courbe d'apprentissage élevée et aux nombreux conflits de plugins, son système se base entièrement sur le contenu, central, avec des "évènements" rapportés. Grav se dit aussi bien user friendly que designer-friendly et developer-friendly. C'est ce que nous allons voir.

Impressions de GRAV CMS

-1er point positif, l'interface rappelle furieusement le fameux template bootstrap, et le choix de themes modernes utilisables est intéressant, plus que pour certains CMS flat file assez pauvres et souvent non-responsives comme zwii et getsimple cms. Le thème de base "antimatter" est déjà en soit assez bien conçu. Remplacer la page de contenu dynamique d'exemple par le template "business" présenté est également assez simple, de même que la création de pages.

-Laisser le site en jachère quelques temps m'a permis de tester la mise à jour, et elle est rapide et intuitive quoique moins facile d'usage que celle de wordpress. Il faut ouvrir les plugins un par un chaque fois pour éxécuter la mise à jour. Sur wordpress il suffit de cocher tous les plugins présents, de sélectionner update dans le menu déroulant, et chaque module se met à jour à son tour automatiquement sans quitter le gestionnaire. Il s'agit de point à améliorer dans le futur.

-Autre point positif, l'ajout de "médias" se fait directement depuis le menu sous le champ de texte de l'éditeur et fonctionne en glisser-déposer. Reste un point à explorer, dans l'onglet "avancé" de l'éditeur de contenu, tester les fonctionnalités d'override.

-Points plus négatifs par contre, il n'y a pas d'autosave (pas de BDD dont pas de scheduler), les codes d'images et de liens ne sont pas forcément intuitifs, et l'éditeur est assez minimaliste (pas de texte justifié par exemple). Maintenant il est presque certain q'un plugin existe ou sortira assez rapidement. J'ai trouvé une pirouette, en travaillant en mode code et en incluant en style en dur qui a fonctionné mais obligé à placer des espacements qui avaient sauté. Tout comme wordpress même en mode "code" les paragraphes (sauts de ligne) sont reconnus comme tels. Il a fallu donc jouer du "BR /", avant de revenir a un système de spans. Il faut savoir que l'éditeur génère son propre code, il faut donc l'apprivoiser. Ex. Un (gras) devient **Texte**, un (Italique) devient _texte_. Une image c'est [![](texte)], un lien c'est juste (texte). C'est assez économique en caractères et participe de la légèreté de l'ensemble tel que promis.

Verdict

Finalement, dans sa forme initiale présente, GRAV est déjà parfait pour un petit site vitrine d'une dizaine de pages, administrable par le client. Parions qu'avec la foule de plugins bientôt disponible des sites plus ambitieux seront possibles. Seul bémol cependant à l'usage, le fameux moteur du back office, Twig est assez verbeux et pas forcément intuitif pour des personnes habituées à Joomla et Wordpress; Pour quelqu'un qui n'a jamais eu de CMS et débute, c'est déjà plus facile, n'ayant rien de préconçu.
J'aurai sans doute l'occasion de revenir sur ce CMS très intéressant lors de l'ajout de nouveaux contenus. Et vous, connaissez vous GRAV ? L'avez-vous testé ou même développé des sites pour des clients ou votre propre usage ?

N'hésitez pas à me laisser vos impressions.