sommaire

Nous avons développé un logiciel gratuit pour publier le catalogue d’une librairie en ligne. Les clients peuvent voir ce qui est sur l’étagère (ou ce que c’était) et commander. Il est suffisamment générique pour définir et afficher d’autres produits.

Tout est beau et propre (merci Bulma CSS), voici à quoi ressemble un résultat de recherche:

Les caractéristiques

Il est fait pour aller de pair avec le logiciel gratuit de gestion de bibliothèque que moi aussi, Abelujo, développons. La librairie fait l’ajout et la vente de livres à Abelujo, et le catalogue est régulièrement lié à la base de données (et la stocke en mémoire pour que tout le reste soit rapide). Mais ABStock peut également lire des livres ou d’autres produits à partir d’un fichier txt et pourrait tout aussi facilement lire à partir d’un CSV ou JSON ou d’une autre base de données.

Le site est composé de:

  • la page principale qui a
    • un formulaire de recherche. Vous pouvez rechercher par titre, auteur, éditeur, département et ISBN (s).
    • un échantillon aléatoire de la sélection de la bibliothèque
  • page de sélection de la bibliothèque pour mettre en valeur les livres
  • page de résultats de recherche. Les internautes peuvent ajouter des livres au panier.
  • et sur sa page panier remplissez un formulaire pour passer une commande. La commande est envoyée par e-mail à la librairie (le paiement en ligne n’a pas encore été jugé nécessaire, il n’a donc pas été effectué)

Le site est réalisé comme générique. Nous complétons les informations et le texte spécifiques à sa structure dans un fichier de configuration.

ABStock est simple à héberger (il suffit d’exécuter un exécutable), mais vous savez que je propose un hébergement payant sur mes serveurs. J’offre un support professionnel. N’hésitez pas à en parler autour de vous! (Encore un peu longtemps et je pourrais vivre (mal) sur mon logiciel libre!)

Le contexte

Nous travaillions pour un client de librairie quand nous étions limités et tout le monde s’est arrêté. Amazon fonctionne à pleine vitesse et les sites de consolidation de librairies (tels que lalibrairie.com ou placeseslibraires.fr) ont été fermés et / ou n’ont pas pu accepter de nouvelles inscriptions. Au bout de deux semaines, le calme n’était plus drôle, nous avons voulu réagir et développer ce site (je suis le seul développeur, mais la librairie est « mon product owner »). Elle a été mise en place rapidement, l’objectif étant que les clients restent en contact avec sa librairie et qu’elle n’ait pas un chiffre d’affaires nul. Soudain, les clients ont commencé à le commander et il a organisé des programmes de sevrage, dans le respect des mesures de santé publique. Elle se déroule dans une librairie de village en zone rurale, où les clients sont heureux d’avoir (enfin) une (bonne) librairie à côté de leur domicile.

Voici un communiqué de presse du Syndicat de la Librairie Française sur l’état actuel de la bibliothèque, un secteur très fragile et leurs propositions de relance: http://www.syndicat-librairie.fr/plan_de_relance_les_propositions_du_slf_pour_les_librairies_independantes

techno

Qui a deviné comment j’ai développé cette application? Dans le Lisp commun, bien sûr! Nous en avons parlé ici et là:

Je ne voulais pas le faire en Python, surtout à cause des difficultés d’implémentation et de livraison et parce que je trouve difficile de maintenir une application Python pendant des années. Je suis devenu assez à l’aise en Lisp maintenant, donc après avoir exploré l’écosystème et testé les cadres ésotériques en langage ésotérique (Weblocks: cool, mais fonctionne toujours), je me suis arrêté sur une pile sans surprise: itinéraires, modèles de style Django, JavaScript à JavaScript.

Mon expérience de développement est toujours très bonne, mon expérience de développement me ravit. Je peux implémenter un exécutable ou exécuter le projet en tant que script. Je peux me connecter à la REPL du site en cours d’exécution, soit depuis le serveur et tmux, soit depuis mon éditeur préféré à la maison et je peux faire une simple mise à jour à chaud (très pratique pour mettre à jour les coordonnées ou les heures d’ouverture du client) ou effectuer une mise à jour à chaud sans redémarrer, y compris s’il est nécessaire d’installer de nouvelles dépendances, pratiquement (mais auquel je reste plus attentif). Voici un petit exemple de Github.

Oui, Common Lisp est toujours utile aujourd’hui. Voici quelques nouvelles récentes:

Pour commencer, je recommande fortement le livre de cuisine: https://lispcookbook.github.io/cl-cookbook/

Une liste de bibliothèques est visible sur: https://github.com/CodyReichert/awesome-cl Notez un clone de numpy numcl numcl, qui peut être interfacé, si nécessaire, avec un processus Python avec py4cl.

Derniers mots (prix à gagner)

Puisqu’il attire toujours votre attention: quelle est votre première impression du nom ABStock? (vous savez, c’est un nom temporaire … qui ne peut pas trouver un meilleur candidat). J’ai décidé que je ne pouvais pas tout faire par moi-même et que je devais améliorer beaucoup de choses, à la fois en Python et en HTML ou Lisp. j’en ai un peu budget pour motiver les contribuables potentiels. Si vous ne faites rien en juin ou juillet, n’hésitez pas à me contacter pour une discussion.

Merci de votre attention et d’un éventuel boost!

Conclusion :
Pour personnalité vous devez avoir un de ses mécanique ! Ma préférence voltampère à Systeme.io, super aisée à défendre et meilleur rapport qualité réduction selon-moi.


0 commentaire

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *