Ma forge

Au fond de chaque ligne de code sommeille une intention, un problème qui demandait voix, une friction du quotidien qui appelait sa résolution. Cette forge n’est pas une vitrine polie où l’on expose des œuvres achevées sous verre, mais un établi vivant, encore tiède du dernier coup de marteau, où chaque outil porte la marque de celui qui le manie. Ici naissent des calculateurs, des connecteurs, des scripts qui tissent des ponts entre des mondes logiciels que l’on croyait étrangers, chaque projet cent fois remis sur l’ouvrage avec cette obstination patiente que les compagnons du Tour de France connaissent bien, celle qui refuse le presque juste, qui polit jusqu’à l’invisible, qui fait d’un assemblage fonctionnel un geste maîtrisé. Parcourez librement cet atelier : certaines créations vous seront utiles, d’autres simplement curieuses, toutes partagent la conviction que le code, lorsqu’il est écrit avec soin et partagé sans réserve, perpétue à sa manière la plus belle tradition artisanale française.

MxChat sur DuckDB (MotherDuck) : recherche vectorielle + BM25 en SQL pur

MxChat est un bon plugin de chatbot RAG pour WordPress, mais ses deux options de stockage vectoriel sont des impasses : MySQL qui se vautre en mémoire, ou Pinecone qui facture la donnée à l’américaine. J’ai écrit un plugin compagnon qui se fait passer pour Pinecone côté MxChat, et traduit chaque appel en SQL DuckDB. Au choix : un fichier local, ou MotherDuck si on préfère le cloud sans le vendor lock. Recherche hybride BM25 + vecteur, migration depuis Pinecone sans repayer le ré-embedding, GPL v2. Encore une rente mensuelle évitée.

AI Invoice Digitization for Odoo

L’OCR natif d’Odoo Enterprise m’a toujours semblé être une case cochée plutôt qu’un outil réellement utile : taux de reconnaissance médiocre, aucune mémoire des corrections, aucune logique comptable. J’ai donc construit account-invoice-digitize-ai, un module open source qui remplace entièrement la chaîne de traitement des factures fournisseurs par un pipeline IA. Il supporte six fournisseurs (Claude, GPT-4o, Gemini, Grok, DeepSeek, Mistral), tourne sur Odoo 16 à 19 Community et Enterprise, et ne nécessite aucune dépendance Python supplémentaire. Le module ne se contente pas d’extraire du texte : il raisonne — matching fournisseur par IBAN ou TVA, imputation comptable selon votre plan de comptes, détection de doublons, validation mathématique des totaux, et apprentissage des corrections pour les prochaines factures du même fournisseur.

WP4Odoo : quand WordPress et Odoo cessent de se tourner le dos

J’ai passé plusieurs semaines à construire le pont que je cherchais depuis des années entre WordPress et Odoo. WP4Odoo est un plugin modulaire et open source qui synchronise vos données entre les deux dans les deux sens (e-commerce, CRM, facturation, adhésions, booking, LMS) sans jamais ralentir votre site. 33 modules, une file d’attente asynchrone, et zéro ressaisie manuelle. Le code est sur GitHub, gratuit, et il parle trois langues.

WooCommerce Subscriptions Tax Retrofit : migrez vos abonnements TTC vers HT + TVA

Vous venez de franchir le seuil de TVA et vos abonnements WooCommerce sont toujours enregistrés en TTC sans ventilation ? WooCommerce Subscriptions Tax Retrofit convertit automatiquement vos abonnements existants en HT + TVA, sans modifier le prix payé par vos clients. Le plugin traite des centaines d’abonnements en quelques minutes, avec simulation préalable et transactions SQL pour garantir l’intégrité de vos données.

Calculateur RAID pour Synology, TrueNAS, UnRAID & Linux

Vous pensez avoir 80 To et découvrez à peine 40 To utilisables sur votre NAS ? Vous n’êtes pas seul. Lassé des calculateurs RAID trop optimistes, j’ai développé un outil qui estime la capacité réelle de vos volumes Synology, TrueNAS, UnRAID ou Linux. Un script simple, précis et sans bullshit, testé en conditions réelles pour éviter les mauvaises surprises de stockage.