Zaibu, une alternative libre pour les amateurs de dégustation
Cette dĂ©pĂȘche prĂ©sente Zaibu, une application web auto-hĂ©bergeable permettant de conserver un journal structurĂ© de ses dĂ©gustations de biĂšres et de vins. DĂ©veloppĂ©e avec SQLPage, elle met lâaccent sur la simplicitĂ©, lâindĂ©pendance et le respect de la vie privĂ©e. Contrairement aux solutions centralisĂ©es comme Untappd ou Vivino, Zaibu ne collecte aucune donnĂ©e et reste entiĂšrement sous le contrĂŽle de lâutilisateur.
Note : nâayant absolument aucune compĂ©tence ni aucun talent en graphisme, le logo a Ă©tĂ© créé avec Bing Image Creator et retravaillĂ© et vectorisĂ© par mes soins. Je sais, çaymal.
- lien ná” 1 : Code source de Zaibu (AGPLv3)
- lien nᔠ2 : SQLPage, l'outil libre de création de d'interfaces pour SQL (MIT)
- lien ná” 3 : Tester Zaibu en ligne
- lien ná” 4 : Tester SQLPage en ligne
Sommaire
Lâalcool est dangereux pour la santĂ©, mĂȘme en petite quantitĂ©. Le vin et la biĂšre, comme les autres alcools, induisent une dĂ©pendance et tuent. Il est recommandĂ© de ne pas consommer plus de 2 verres par jour, et de ne pas boire dâalcool au moins 2 jours par semaine. Si vous avez des doutes sur votre consommation, nâhĂ©sitez pas Ă contacter un professionnel de santĂ©.
Pourquoi créer Zaibu ?
Zaibu rĂ©pond avant tout Ă un besoin trĂšs concret : garder une trace de ses dĂ©gustations de boissons (uniquement biĂšres et vins pour lâinstant) sans dĂ©pendre dâapplications trop encombrĂ©es ou propriĂ©taires qui exploitent les donnĂ©es de leurs utilisateurs.
Ce projet est en fait lâĂ©volution dâun simple fichier texte mis en forme selon une structure plus ou moins rĂ©guliĂšre. Il Ă©tait Ă lâorigine partagĂ© via Nextcloud, un service de stockage et de synchronisation de fichiers, libre et auto-hĂ©bergeable. Pour passer de ce fichier brut Ă une vĂ©ritable application, plusieurs outils ont Ă©tĂ© utilisĂ©s:
- Makefile : un fichier de configuration pour GNU Make, permettant dâautomatiser diverses tĂąches (ici, la conversion du fichier texte).
- Gawk : une version libre de lâoutil AWK, qui lit et transforme le contenu du fichier texte pour lâadapter au format voulu.
- textql : un utilitaire en ligne de commande qui interprĂšte des fichiers texte (CSV, TSVâŠ) comme des tables SQL, ce qui facilite le chargement des donnĂ©es dans une base SQLite.
GrĂące Ă cette chaĂźne dâoutils, le fichier texte initial a pu ĂȘtre converti en une base de donnĂ©es exploitable, pour ensuite alimenter lâapplication Zaibu.
Pour ceux qui collectionnent les bouteilles comme dâautres collectionnent les timbres, câest un outil pratique et lĂ©ger, conçu pour ĂȘtre maĂźtrisĂ© de bout en bout : le code source est distribuĂ© sous licence libre (AGPLv3), lâapplication est facile Ă hĂ©berger sur son propre serveur, et consomme trĂšs peu de ressources.
Un objectif secondaire Ă©tait de tester les capacitĂ©s de lâoutil SQLPage pour le dĂ©veloppement rapide dâapplications de gestion de donnĂ©es.
Un besoin personnel
Il peut ĂȘtre difficile de se souvenir dâune bonne biĂšre artisanale goĂ»tĂ©e lâannĂ©e passĂ©e ou du vin qui vous a tant plu Ă un mariage. Un carnet de notes ou un tableau dans un logiciel de bureautique peuvent dĂ©panner, mais on sây perd vite, et ce nâest pas toujours trĂšs pratique Ă consulter sur son tĂ©lĂ©phone quand on est en pleine dĂ©gustation.
Zaibu propose un formulaire simple oĂč vous pouvez renseigner le nom, le producteur, le style, lâamertume, le taux dâalcool, vos impressions⊠Une fois la dĂ©gustation terminĂ©e, vous conservez une trace prĂ©cise, consultable Ă tout moment. En un coup dâĆil, vous pouvez comparer vos diffĂ©rents coups de cĆur ou vous rappeler pourquoi un vin particulier ne vous avait pas convaincu.
Une occasion de tester SQLPage
Zaibu a aussi Ă©tĂ© conçu comme une dĂ©monstration technique. Il a servi de terrain dâexpĂ©rimentation pour un nouvel outil, SQLPage, qui permet de crĂ©er une application web de gestion et dâaffichage de donnĂ©es complĂšte sans sâencombrer de milliers de lignes de code. En partant de requĂȘtes de bases de donnĂ©es trĂšs simples, on obtient un site fonctionnel rapidement.
Ici il sâagit dâune application de type CRUD dans sa plus simple expression, donc parfaitement adaptĂ©e Ă ĂȘtre Ă©crite en pur SQL. MĂȘme si certains traitements nĂ©cessitent de se creuser un peu plus la tĂȘte quand rien dâautre nâest disponible, il existe gĂ©nĂ©ralement une maniĂšre dâarriver Ă ses fins (et on dĂ©couvre parfois avec bonheur des subtilitĂ©s du langage quâon ignorait !).
Câest le framework parfait pour crĂ©er rapidement ses propres outils tout en gardant la maĂźtrise complĂšte de sa donnĂ©e, en utilisant une base de donnĂ©es que lâon peut hĂ©berger soi-mĂȘme facilement.
Une approche libre et auto-hébergeable
De nombreuses applications existent dĂ©jĂ , mais elles imposent souvent la crĂ©ation dâun compte, exploitent les donnĂ©es des utilisateurs et monĂ©tisent leur activitĂ© via la publicitĂ© ou des abonnements. Zaibu prend le contre-pied en offrant une solution entiĂšrement libre, lĂ©gĂšre et indĂ©pendante.
Lâapplication repose sur SQLite, un systĂšme de gestion de base de donnĂ©es qui se distingue des bases de donnĂ©es traditionnelles comme MySQL ou PostgreSQL. Contrairement Ă ces derniĂšres, qui nĂ©cessitent un serveur dĂ©diĂ© fonctionnant en arriĂšre-plan pour gĂ©rer les requĂȘtes et stocker les informations, SQLite est une base de donnĂ©es embarquĂ©e.
Cela signifie que toutes les donnĂ©es sont enregistrĂ©es directement dans un fichier unique sur lâordinateur ou le serveur oĂč lâapplication est installĂ©e. Il nây a donc pas besoin dâinstaller et de configurer un logiciel supplĂ©mentaire pour gĂ©rer la base de donnĂ©es. Cette approche simplifie considĂ©rablement lâinstallation et lâutilisation de lâapplication, surtout pour des utilisateurs qui ne sont pas familiers avec lâadministration de serveurs.
Et puis bien sĂ»r, son code est ouvert. Câest comme une biĂšre artisanale : vous savez exactement quels ingrĂ©dients sont utilisĂ©s, comment ils interagissent, et si lâenvie vous prend, vous pouvez modifier la recette pour lâadapter Ă vos prĂ©fĂ©rences. Vous pouvez la brasser tel quel, y ajouter une touche personnelle, ou mĂȘme la partager amĂ©liorĂ©e avec dâautres passionnĂ©s. Ici, tout est transparent et modifiable.
Une interface simple et accessible
PensĂ©e pour une utilisation mobile et desktop, lâinterface de Zaibu permet dâajouter rapidement une dĂ©gustation, sans fioritures. Sur smartphone, il devient facile de consulter ses notes en magasin ou chez un caviste pour retrouver une rĂ©fĂ©rence apprĂ©ciĂ©e ou Ă©viter une dĂ©ception.
Et maintenant ?
Zaibu est encore jeune et perfectible. Lâapplication pourrait Ă©voluer avec des fonctionnalitĂ©s comme le partage entre utilisateurs ou lâintĂ©gration dâune base collaborative⊠NâhĂ©sitez pas Ă faire vos retours dans les commentaires !
Et si le principe vous intĂ©resse, vous pouvez aussi dĂ©couvrir Mon petit potager du mĂȘme auteur et construit sur le mĂȘme framework, cette fois pour suivre les rĂ©coltes de son jardin et la pluviomĂ©trie.
Commentaires : voir le flux Atom ouvrir dans le navigateur