Nous sommes le Sam 23 Août, 2014 02:32
Supprimer les cookies

ACC - maquette d'un mini CMS basé sur un fichier txt

Pour une tâche précise, pour remplacer un logiciel propriétaire donné...

Mar 21 Mai, 2013 11:49

Bonjour

Ne trouvant pas un CMS comme je le souhaitais, j'ai fini par écrire une petite maquette, que j'ai baptisée : ACC (a card Cms, nom provisoire). Pour l'instant, il n'y a que le moteur qui fonctionne, j'ai royalement zappé la partie admin. Il est vrai que ce petit CMS n'a pas de base de données et stocke tout dans un seul fichier txt.

Est-ce un CMS ? Pas tout à fait, plutôt une sorte de gestionnaire de cartes, d'ailleurs son 1er nom était ACM (a card manager). Il y a 2 types de templates dedans : fiche et liste. Et aussi une mini notion d'héritage pour éviter de réécrire 36 fois les mêmes choses.

J'aimerais que ce petit projet serve à d'autres, pour cela, j'attends des conseils, des idées pour faire évoluer ACC. Non, je ne cherche pas à concurrencer Wordpress, Joomla ou Drupal. Je cherche à mettre en place un mini-CMS basé sur un fichier texte et affichant/listant des enregistrements. Une sorte d'Access/Filemaker sur le web, en simpliste. Si ce projet dépasse la stade de la maquette, je compte bien qu'il soit et reste libre. Autant que ça puisse servir à quelqu'un. Et si quelqu'un développe quelque chose à partir d'ACC, j'aimerais en être informé, car ça fait toujours plaisir de savoir qu'on a été utile.

Pour télécharger la chose : http://patrikcarpentier.free.fr/Soft/ACC.zip (j'insiste, c'est une maquette)

Merci de m'avoir lu.
Bonne journée à tous, Patrik
PatrikGC

Avatar de l’utilisateur
Messages : 54
Géo : France - Nord - Dechy

Mar 21 Mai, 2013 22:21

Bonsoir PatrikGC ; bonsoir à tous,

Je viens de tester sur mon propre serveur PHP, puis, je suis allé fouiner dans le code et le « Manuel » (que vous gagnerez à fournir au format ODT...). C’est certes une ébauche, certes minimaliste mais c’est aussi, simplement, une pure merveille de pédagogie pour les gens qui, comme moi, ne sont PAS programmeurs professionnels. C’est juste très bien écrit, parfaitement commenté et indenté, LISIBLE, suffisamment pour donner des idées ; beaucoup d’idées... Cela démontre qu’une petite base de données (plus qu’un CMS il me semble) peut être contenue dans un fichier texte et, par le biais du Web, offrir un nombre impressionnant de requêtes faites dessus.

Sans l’attirail SQL ni XML ; on peut — aussi — lire cela comme un cours de programmation (juste au-dessus de mon propre niveau actuel), apte à pousser les amateurs vers le haut. Je ne sais pas si cela servira à quelqu’un de manière effective. Mais encore une fois, cela va me servir pour au moins agrandir mon champ de connaissance en programmation. Tout cela mérite bien un seul mot : MERCI.

:-)
Sébastien Cosson

Avatar de l’utilisateur
Messages : 19
Géo : Meymac (19250)

Mer 22 Mai, 2013 08:17

Bonjour Sébastien, et aussi aux autres lecteurs, bien sûr ;)

Je suis content que ce petit code puisse vous être utile :) Si vous avez des questions, n'hésitez pas...

Pour certains projets, je pense depuis un bon bout de temps que l'emploi du SQL est sur-dimensionné par rapport aux réels besoins de bcp de CMS et autres applications Web. Le XML n'est pas mal mais parfois, il y en a plus en balises qu'en données. Bref, les fichiers txt, même s'ils sont "antiques", peuvent rendre des services.

Il y a qques années, je gagnais ma vie à ressusciter des projets informatiques. Je suis donc assez sensibilisé à la lisibilité d'un programme, car quand vous devez repasser derrière un code écrit avec les pieds sur un coin de nappe, souvent, vous jetez tout et vous réécrivez, c'est plus simple et rapide. Le petit manuel est plutôt un aide-mémoire qu'autre chose. J'aurais dû le convertir en PDF.

Mon petit code est en effet qquechose qui est à mi-chemin entre la base de donnée et le CMS classique. Il n'est pas prévu pour des gros sites, loin s'en faut. J'espère qu'il sera développé plus encore par la suite et qu'il pourra être utile à d'autres personnes.

Merci de m'avoir dit merci, et bonne continuité !

Bonne journée :)
PatrikGC

Avatar de l’utilisateur
Messages : 54
Géo : France - Nord - Dechy

Sam 01 Juin, 2013 15:34

Vous pouvez jette un œil à PluXml (voir pluxml.org).
Il n'utilise pas de base de données mais du XML.
J'ai bien compris que vous n'étiez pas fan de XML mais PluXml est très abouti.
ComputingFroggy

Messages : 5

Dim 02 Juin, 2013 01:41

Bonjour à tous,

@ComputingFroggy :
Ne jugez pas trop vite mon propre point de vue sur XML... Il me semble toujours être LA solution à mes propres problématiques (complexes). Je ne pense pas que j’aurais écris ceci (à l’attention des très novices de mon propre milieu, ignare en informatique) ou cela (presque comme « mémoire » parce que c’est un travail que je laisse reposer un temps) si je n’avais pas quelque goût pour la chose... XML se décline aussi en SVG, ce qui, pour moi, prendra peut-être un jour une forme à peine ébauchée ici.

Je veux dire que c’est comme de tout, il ne faut pas généraliser. La lecture du code de PatrikGC apprend que des solutions plus simples que XML sont plus adaptés dans certains cas, notamment quand on a à faire à de toutes petites bases de données tabulaires. Oublier les fichiers texte, c’est comme dire que « Json, c’est de la merde ». Mais vous n’allez pas coder vos artefacts Jpeg en Json que je sache ? Donc, aussi verbeux que ce nous savons que l’est XML, il reste qu’il est quand même réputé pérenne et ça, du point de vue d’un restaurateur de monuments historiques, je vous prie de croire que c’est un argument de taille. Mais dans certains cas, par exemple temporaires, il sera plus clair, plus facile, moins verbeux, évident, plus pérenne, de ne pas s’embarrasser de DTD (ou de schémas...) pour aller au plus court : un fichier texte. En linguistique on parle de « langues véhiculaires » ou de « lingua franca ». Il me semble important d’être pourvu de cette culture lors du développement de code ; cela multiplie les solutions face à la variété des problématiques.

Votre solution est plus complexe et, surtout, dans un état qui n’a évidemment rien à voir avec l’ébauche de PatrikGC. Ceci dit, le code est tellement clair que ça me donne aussi envie d’aller plus loin avec. En d’autres termes, cela tombe pile-poil, pour moi, puisque je dois prochainement remettre en ligne un site ARCHI basique qui est pour l’instant géré avec le très grassouillet Joomla. Or votre solution a la légèreté d’une plume, et l’élégance des anges. Votre code est extrêmement lisible, même pour un amateur dans mon genre. C’est commenté, c’est indenté... Que du bonheur... J’y piquerais d’ailleurs bien quelques bribes de concepts, notamment dans la façon dont vous gérez les langues... En plus, dans le cadre d’un site administré malgré tout à la façon CMS, le déplacer d’une machine à l’autre est un vrai plaisir puisqu’on a pas à se préoccuper de sauvegarder la base de données, ou en natif via pages PHP, ou en direct avec un phpMyAdmin quelconque.

La page de l’annuaire de Framasoft présentant votre bébé est symptomatique par ses commentaires élogieux. Petit bémol : le fichier téléchargé (« pluxml-latest.zip ») fait presque 300 ko et, une fois décompressé, 1 Mo. Aussi la phrase : « Toute légère (120 ko), elle gère, bien sûr, les commentaires et la syndication et n’a pas besoin de MySQL [...] » me semble fausse et il faudrait, je crois, corriger. De même, au-dessus du titre, il faudrait quand même rajouter PHP dans la ligne « Code.....: », parce que XML seul, c’est quand même un poil balourd en matière d’action...

Passés les quelques tests faits sur mon propre serveur, j’allais vous poser la question de savoir s’il était possible de rajouter un éditeur wysiwyg de type CKEditor. Mais j’ai fait une recherche préalable sur votre wiki qui est dans le même jus de lumière que le reste... De là, j’ai parcouru les principaux plugins qui, évidemment, permettent de se faire son CMS à la carte en restant au plus léger. C’est terrifiant la simplicité ; continuez !

Donc pour moi, la chose est adoptée ; mais encore une fois, vous n’êtes pas dans la même optique que PatrikGC. Par son extrême dénuement, elle possède aussi un intérêt didactique qui se perdra d’ailleurs s’il fait évoluer son code de manière conséquente. Aussi lisibles et biens écrits que soient vos fichiers, il reste qu’ils forment aujourd’hui une idée aboutie alors que le code de PatrikGC offre encore toutes les perspectives possibles dans le domaine qu’il revendique. C’est l’avantage des ébauches : même ineffectives, elles nous laissent, parfois, plus rêver...

:-)
Sébastien Cosson

Avatar de l’utilisateur
Messages : 19
Géo : Meymac (19250)

Dim 02 Juin, 2013 08:45

Bonjour à tous

Je n'ai absolument rien contre le SQL et aussi le XML puisque j'utilise divers CMS comme Wordpress, Joomla, Pluxml. D'ailleurs, je recommande souvent Pluxml car celui-ci est efficace, et est finalement une sorte de Wordpress Lite, simple d'emploi et d'accès.

Un CMS que j'utilise aussi est CMSimple, qui est bâti sur un seul fichier HTML divisé par les balises H1, H2 et H3. Il est efficace pour les petits sites n'ayant pas bcp de visiteurs et très peu d'administrateurs.Un bon choix pour un petit site "plaquette".

SQL, XML et TXT, peu importe la technique de stockage, du moment que ce soit adapté. Je suis parfaitement d'accord sur le fait qu'il faut du SQL quand on a des milliers, voire des millions de visiteurs par jour et une armée de rédacteurs, d'auteurs et d'administrateurs pour alimenter le site. A l'autre bout de la chaîne, il y a plein de petits sites, de quelques pages, gérés par une seule personne et recevant à peine 100 visiteurs par jour. Utiliser le SQL dans pareil cas est identique à utiliser un semi-remorque pour déposer les enfants à l'école...

Mon petit code est une ébauche, un test pour vérifier s'il n'y aurait pas une piste à farfouiller. Je pense que oui. Je pense aussi qu'il n'y a plus grand chose à ajouter au noyau, le reste pouvant être délégué à des plugins. Ce qui manque surtout est une interface backoffice, qu'on peut éventuellement placer en tant que plugin. ACC n'est pas vraiment un CMS, ce n'est pas non plus un blog, ni un portail, ni un tourne-page. C'est qqchose qui flotte entre la mini-base de données et un mini-site web.

J'attends vos avis et propositions pour faire évoluer ACC, sans qu'il ne devienne une usine à gaz. Il n'a pas pour vocation de concurrencer Drupal ou Typo3, ni devenir à terme le moteur d'un Wikipédia :D

Merci à Sébastien d'apprécier ce petit code, j'espère qu'il vous sera pleinement utile.

Bonne continuité à tous :)
PatrikGC

Avatar de l’utilisateur
Messages : 54
Géo : France - Nord - Dechy

Dim 16 Juin, 2013 09:58

Bonjour à toutes et à tous

J'ai ajouté qques nouvelles fonctionnalités, resserré un peu les boulons, et fait qques aménagements, sans avoir dépassé 1k de code en plus.
Je teste au mieux la chose, et je pense pouvoir la mettre à disposition de tous d'ici 1 semaine environ. Il manque toujours la partie admin, celle-ci devrait rester lite, une sorte d'éditeur simpliste de texte, puisque tout est mis dans un seul fichier dans lequel tout est écrit en clair.

Si quelqu'un est intéressé pour m'aider à mieux développer ACC, je suis preneur :)

Bon weekend !
PatrikGC

Avatar de l’utilisateur
Messages : 54
Géo : France - Nord - Dechy

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit