Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.

Open DroneLog - Vos logs de drone restent chez vous

Si vous pilotez un drone DJI, vos logs de vol finissent probablement sur Airdata ou un service cloud du même genre. En gros ce sont des trucs qui aspirent vos trajectoires GPS, vos altitudes en mètres, vos tensions de batterie en millivolts... et qui stocke tout ça sur des serveurs quelque part dans le cloud. Ouais, bof.

Hé bien Open DroneLog , c'est exactement l'inverse à savoir un carnet de vol open source qui garde tout en local, dans une base DuckDB (une base de données embarquée ultra-légère) sur votre machine.

Avec cet outil, vous importez vos fichiers .txt DJI (tous les modèles : Mini, Mavic, Air, Phantom...), les CSV de l'app Litchi, ou même les exports Airdata, et hop, le logiciel mouline tout ça pour vous afficher vos vols sur une carte 3D interactive avec le replay de la trajectoire. Vous pouvez alors accélérer jusqu'à x16, voir la télémétrie en temps réel (altitude, vitesse, signal RC, tensions des cellules de batterie) et même visualiser les mouvements des joysticks.

Pas mal donc pour comprendre pourquoi votre Mavic a décidé de faire un plongeon kamikaze ce jour-là !

Visualisation 3D d'une trajectoire de vol dans Open DroneLog

Un truc bien pensé dans l'appli, c'est l'auto-tagging car le logiciel détecte automatiquement les vols de nuit, les passages à haute vitesse, les situations de batterie froide... et colle des étiquettes sur chaque vol sans que vous ayez à lever le petit doigt. Pour ceux qui se demandent à quoi ça sert de tenir un journal de vol, disons que le jour où l'aviation civile vous pose des questions sur vos habitudes de pilotage, avoir un historique propre de tous vos vols avec coordonnées et télémétrie, ça peut clairement vous sauver la mise (surtout si vous volez près de zones sensibles).

Côté déploiement, vous avez le choix : app desktop (Windows, macOS, Linux), image Docker pour l'auto-héberger, ou la webapp pour tester sans rien installer. Le Docker est clairement le meilleur choix parce que vous pouvez monter un dossier de logs et configurer une synchro automatique via cron. Genre, votre drone se pose, vous branchez la carte SD sur le NAS, copiez les fichiers .txt dans le dossier monté, et l'import se fait tout seul toutes les 8 heures. Ça tourne même sur un Raspberry Pi !

D'ailleurs, me ça rappelle l'époque lointaine où on construisait son propre drone dans le garage.

Les graphiques de télémétrie : altitude, vitesse, batterie, tout y passet'as anal

Le géocodage inversé (qui transforme vos coordonnées GPS en noms de lieux) se fait hors-ligne donc c'est top pour la vie privée et d'ailleurs, si le sujet vous parle, le projet OwnTracks applique la même philosophie à la géolocalisation perso.

Le logiciel gère aussi les profils multiples (pratique si vous avez plusieurs pilotes ou flottes), le suivi de la santé des batteries avec historique des cycles, la maintenance avec seuils configurables, et l'export dans à peu près tous les formats imaginables : CSV, JSON, GPX, KML. Y'a même un générateur de "FlyCards" pour partager vos stats de vol sur les réseaux en format 1080x1080 ! Et le tout est traduit en 11 langues, dont le français.

Le projet est sous licence AGPLv3, et pour l'instant c'est DJI-only (pas de Parrot ni Autel en natif). Bref, si vous cherchez un carnet de vol drone qui ne balance pas vos coordonnées GPS dans le cloud, c'est tout trouvé !

WinCalls - L'appli qui raccroche au nez des démarcheurs

Le démarchage téléphonique, on n'en peut plus !! Y'a bien Bloctel qui devait régler le problème... sauf que notre téléphone continue de sonner 3 fois par jour avec des histoires de CPF ou de panneaux solaires. Pas ouf quoi... Du coup, un enquêteur en fraude connu du web a décidé de créer sa propre appli Android pour raccrocher automatiquement au nez de ces FDP de spammeurs.

WinCalls , c'est le nom de la bête. Vous l'installez sur votre smartphone, vous activez la protection, et tadaaa, l'appli détecte les coups de fil de démarchage et raccroche toute seule avant même que votre téléphone ait le temps de sonner. Y'a même pas de notif, c'est clean ! Le spammeur parle dans le vide et vous, vous continuez votre vie peinard.

Le truc cool, c'est le bonhomme derrière. Centho , c'est un enquêteur spécialisé dans la fraude, qui traque les arnaqueurs au quotidien parce que c'est littéralement son métier, du coup forcément, il sait comment les démarcheurs fonctionnent et comment leur couper le sifflet.

Bon, vous allez me dire qu'Android a déjà un filtre anti-spam intégré. C'est vrai. et sur les Pixel, il peut même bloquer les démarcheurs automatiquement mais sur la plupart des autres smartphones, il se contente juste de vous signaler l'appel et c'est ensuite à vous de décider si vous décrochez ou pas. Donc ça reste relou.

La différence avec WinCalls, c'est donc la méthode car l'appli se base en autre sur les préfixes de numéros réservés au démarchage par l'ARCEP (genre les 0162, 0163...) pour identifier les appels commerciaux et raccrocher directement. Tout se fait donc en local sur votre téléphone. Contrairement à d'autres applis qui aspirent votre carnet d'adresses pour alimenter leur base (coucou Truecaller), ici zéro données transmises à l'extérieur. C'est propre ! Merci Centho !

Après c'est Android uniquement donc les possesseurs d'iPhone devront se débrouiller autrement (le filtre intégré d'iOS fait à vrai dire un boulot correct, mais c'est pas le même niveau... Moi j'utilise Begone et l'appli Orange Téléphone sous iOS).

Ah et surtout c'est totalement gratuit. Le projet fonctionne uniquement grâce aux dons des utilisateurs qui en ont marre de se faire harceler et y'a même une communauté Discord pour remonter des faux positifs ou poser vos questions, bref c'est bien fichu.

Si la sécurité de votre téléphone Android vous préoccupe de manière plus globale, c'est un bon complément. Et pour ceux qui se demandent comment se débarrasser définitivement des appels indésirables, la combo c'est de s'inscrire sur Bloctel (ça filtre les démarcheurs légaux... les 3 qui restent) et d'utiliser WinCalls qui agit à un niveau différent en bloquant via les préfixes ARCEP. Les deux se complètent plutôt bien.

C'est gratuit et c'est par là . Merci à Gotcha57 pour l'info !

Dorso - L'app Mac qui floute votre écran quand vous faites le dos rond

En ce moment, j'ai une sciatique qui me rend dingue ! Du coup, entre deux grimaces sur ma chaise de bureau ergonomique, je me suis retrouvé à chercher des trucs pour améliorer ma posture devant l'écran... et je suis tombé sur Dorso, une petite app macOS qui surveille votre posture en temps réel et qui floute progressivement l'écran quand vous commencez à vous avachir.

Ainsi, votre Mac vous punit si vous vous tenez mal ! Vous lancez l'app, vous vous asseyez bien droit devant votre clavier, vous cliquez sur le bouton de calibration (aïe, mes vertèbres), et ensuite Dorso surveille votre position via la webcam de votre MacBook ou iMac grâce au framework Vision d'Apple.

Dès que votre tête commence à piquer du nez, l'écran se floute. Plus vous "slouchez", plus c'est flou. Du coup, soit vous vous redressez, soit vous bossez dans le brouillard comme un moine copiste myope. En tout cas, c'est redoutablement efficace pour corriger sa posture.

Sauf que la webcam, c'est pas le seul mode de détection. Si vous avez des AirPods Pro, Max ou 3e génération, Dorso peut utiliser les capteurs de mouvement de vos écouteurs pour détecter l'inclinaison de votre tête. Pas besoin de caméra, pas besoin de lumière... vos AirPods deviennent votre "coach posture" et quand vous les retirez des oreilles, l'app se met en pause toute seule. Par contre, attention, le mode AirPods nécessite macOS 14 minimum et l'autorisation "Motion & Fitness Activity" dans les réglages Confidentialité.

Côté vie privée, tout se passe en local sur votre machine. Aucune image n'est enregistrée, aucune donnée ne quitte votre Mac. Le flux vidéo de la webcam est traité en temps réel puis immédiatement supprimé et pour le flou, l'app utilise une API privée de CoreGraphics pour agir au niveau système, ce qui permet de flouter tous vos écrans d'un coup si vous avez un setup multi-moniteurs.

L'installation, c'est un brew install --cask dorso et hop, c'est réglé. Au premier lancement, il faudra autoriser l'accès caméra (mode webcam) ou Motion & Fitness (mode AirPods) dans les Réglages Système.

L'app se loge ensuite dans la barre de menu à côté de l'icône Bluetooth et vous pouvez régler la sensibilité sur 5 niveaux via un petit panneau de préférences. Y'a même une "dead zone" configurable pour que ça ne se déclenche pas au moindre mouvement de tête (genre quand vous regardez votre téléphone 2 secondes). Sans cette dead zone, la moindre gorgée de café vous vaut un écran tout flou, donc c'est indispensable !!

L'app s'appelait "Posturr" à l'origine mais une app iOS portait déjà ce nom et comme c'est complétement FDP de voler le nom des autres, il a trouvé un autre nom en lançant 30 agents Claude en parallèle pendant une heure... mais pour rien puisque c'est finalement lui qui a trouvé "Dorso" (Claude avait suggéré "Posturn", bof quoi). Comme quoi, même avec 30 IA qui bossent pour vous, le cerveau humain a encore son mot à dire !!

Perso, vu l'état de mon dos en ce moment, mon bureau debout ne suffit plus. Si vous aussi vous passez vos journées courbé devant votre écran comme Gollum devant son précieux, Dorso pourrait bien vous éviter de finir chez le kiné à 60 balles la séance. L'app tourne sous macOS 13+ (Intel et Apple Silicon), c'est sous licence MIT, et c'est gratuit !

Bref, y'a plus qu'à se redresser. Enfin... à essayer.

Eonvelope - Vos emails méritent aussi un backup local

On archive nos photos avec Immich , nos documents avec Readur , nos mots de passe avec Vaultwarden ... mais nos emails ? Ah bah non, ça on les laisse chez Google en croisant les doigts pour que tout se passe bien jusqu'à la fin de nos jours. C'est quand même un peu dinguo quand on y réfléchit sérieusement.

Et pourtant, y'a des années de conversations là-dedans ! Des factures en pièce jointe, des confirmations de commande, des échanges pro avec votre comptable, des mots de passe envoyés en clair (oui, hélas, ça arrive encore). Du coup, quand un hébergeur mail décide de changer ses conditions générales ou de fermer boutique, tout part à la poubelle si vous n'y faites pas attention.

Eonvelope , c'est un outil open source en Python qui permet de sauvegarder automatiquement tout ça sur votre propre serveur et qui se lance avec un simple docker compose up.

Le truc, c'est que des outils comme Gmvault font déjà le boulot via cron, mais uniquement pour Gmail et en ligne de commande alors qu'Eonvelope, lui, un peu à la manière de Bichon , tourne en arrière-plan avec une interface web et archive en continu tous vos comptes. Franchement, c'est pas le même délire. Vous branchez vos comptes IMAP, POP3, Exchange, et même JMAP (le protocole poussé par Fastmail qui commence tout juste à se démocratiser), vous réglez la fréquence, et hop, vos mails atterrissent dans votre instance sans que vous ayez à y penser.

Attention par contre, c'est de l'archivage, pas un client mail... vous ne répondrez pas à vos mails depuis l'interface.

Côté installation, c'est du Docker avec seulement 2 conteneurs, le serveur web et la base de données. En fait, comptez 5 minutes chrono si vous avez déjà un serveur dédié ou un VPS, le fichier docker-compose.yml est fourni et les variables d'environnement sont bien documentées sur ReadTheDocs . Y'a même un mode basse consommation pour ceux qui font tourner ça sur un Raspberry Pi 4 avec 2 Go de RAM ou un petit Synology ! SSL et HTTPS sont inclus par défaut, et l'authentification multifacteur aussi.

Mais le vrai point fort, c'est les intégrations avec le reste de l'écosystème self-hosted. Concrètement, vous pouvez envoyer vos pièces jointes PDF vers Paperless-ngx pour l'OCR, les photos vers Immich, et exporter vos contacts vers votre carnet d'adresses Nextcloud. Y'a aussi un endpoint Prometheus pour brancher Grafana et suivre vos stats d'archivage. En gros, si vous avez déjà un homelab qui tourne, ça vient se brancher dessus comme une pièce de Lego.

L'interface web est en PWA (donc utilisable sur votre téléphone), avec un moteur de recherche, du filtrage par date et par expéditeur, des fils de conversation reconstitués et de l'import/export en EML et MBOX. Franchement, c'est propre. Y'a aussi une API REST pour ceux qui préfèrent scripter par-dessus plutôt que de passer par l'interface.

Le projet est sous licence AGPLv3 et son dev déclare l'utiliser lui-même au quotidien, ce qui est souvent bon signe. Notez que la migration depuis un backup existant n'est pas forcément fluide mais qui ne tente rien n'a rien !

Bref, ça comble un vrai manque dans la stack de nos machins auto-hébergés mais je trouve que l'approche est clairement plus intégrée que ce qui existe (genre MailPiler ou un combo fetchmail+dovecot). À surveiller donc !

Source

Il fabrique un robot qui joue tout seul au jeu du dinosaure de Chrome

Un bricoleur a assemblé un petit montage à base d'ATtiny85 qui joue automatiquement au jeu du dinosaure caché dans Google Chrome. Le tout pour moins de 10 euros de composants et avec un microcontrôleur pas plus grand qu'un pouce.

Deux capteurs et un microcontrôleur, c'est tout

Le projet est signé Albert David, et le principe est assez malin. Une carte Digispark ATtiny85, qui coûte entre 2 et 5 euros, est branchée en USB sur un PC et se fait passer pour un clavier grâce au protocole HID. Pour le reste, vous avez deux modules LM393 photorésistants qui sont collés directement sur l'écran, le premier au niveau du sol pour voir les cactus, et le second plus haut pour voir les oiseaux.

C'est au passage de chaque obstacle que la luminosité change, et donc que le capteur s'active pour envoyer la touche espace ou la flèche du bas pour sauter et baisser la tête, le tout à travers le microcontrôleur, et seulement 8 ko de mémoire flash.

Un système qui s'adapte à la vitesse du jeu

Encore plus fort, l'ensemble intègre un système de timing interactif, avec un firmware qui mesure la largeur des obstacles, et surtout conserve un historique de cinq mesures, pour estimer au mieux la vitesse du jeu.

Le délai entre la détection et l'appui sur la touche est recalculé en permanence, avec des bornes minimales et maximales pour éviter les ratés. Il y a aussi un délai de 400 millisecondes entre chaque action pour ne pas mitrailler les touches.

Côté calibration, il faut quand même un peu de patience. Les deux capteurs doivent être positionnés à 30-40 mm devant le dinosaure, et les potentiomètres des modules LM393 ajustés pour que le fond blanc de l'écran ne déclenche rien mais que les obstacles foncés soient bien détectés.

Albert David recommande de tester sur une vingtaine d'obstacles avant de considérer le réglage comme bon. Et si le jeu passe en mode nuit, une commande JavaScript dans la console du navigateur empêche l'inversion de contraste qui fausserait les capteurs.

Bref, vous l'avez compris, c'est le genre de projet qui ne sert strictement à rien, et c'est pour ça qu'on aime bien. Avec moins de 10 euros de composants, un bout de code en C et deux capteurs de luminosité scotchés sur un écran, on obtient un système qui joue au jeu du dinosaure mieux que la plupart d'entre nous.

Le code est disponible sur GitHub pour ceux qui voudraient essayer, et vous avez tous les détails ici . Tout ceci rappelle quand même que ce petit jeu caché de Chrome, que Google avait glissé là pour meubler les coupures internet, continue de mobiliser les bidouilleurs du dimanche.

Sources : Hackaday , Prolinix

Promptfoo - Fini le doigt mouillé pour tester vos LLM

Si vous utilisez des LLM dans vos projets, vous savez que le plus flippant c'est pas de les faire fonctionner (quoique..lol) mais c'est de vérifier qu'ils ne disent pas n'importe nawak ! Et pour cela, il y a Promptfoo , un outil CLI open source qui permet de tester vos prompts, comparer les modèles et scanner les vulnérabilités de vos apps IA, le tout avec un simple fichier YAML.

Ça s'installe en une commande (npx promptfoo@latest init) et vous voilà avec un fichier promptfooconfig.yaml où vous définissez vos prompts, les modèles à tester et les assertions à vérifier.

Genre, vous voulez que votre traduction contienne bien "Bonjour le monde", Hop, un petit tour dans le YAML, assertion contains, et c'est terminé. Plus besoin de relire 200 outputs à la main en plissant les yeux ! Par contre, attention : le YAML peut vite devenir un plat de spaghetti si vous testez 15 prompts sur 8 modèles en parallèle. Commencez donc petit.

La matrice d'évaluation de promptfoo, sobre mais efficace

L'outil supporte plus de 60 providers différents comme OpenAI, Claude, Gemini, Llama via Ollama, Mistral... vous mettez tout ça dans le même fichier de config et promptfoo les fait tourner côte à côte. Vous voyez alors directement lequel hallucine le moins, lequel répond le plus vite, lequel coûte une blinde pour un résultat bof bof. Le tout avec des assertions typées : contains, llm-rubric (où un autre LLM note la réponse), javascript pour vos critères custom, et même cost et latency pour garder un œil sur la facture.

Après tester si votre chatbot traduit correctement, c'est sympa, mais vérifier qu'il se fait pas jailbreaker par un "ignore toutes tes instructions", c'est quand même plus critique ! Et c'est pourquoi Promptfoo embarque un scanner de vulnérabilités qui couvre plus de 50 types d'attaques : injections de prompts directes et indirectes, fuites de données personnelles, biais, contenu toxique, escalade de privilèges sur les outils...

Il utilise pour cela des techniques comme le Tree of Attacks with Pruning, un algo qui explore plusieurs chemins d'attaque en parallèle pour trouver les failles sans brute force. Si vous voulez creuser le sujet du red teaming LLM, DeepTeam est un bon complément côté Python.

Le dashboard red teaming de promptfoo avec les vulnérabilités détectées

C'est surtout cette intégration CI/CD qui fait la différence. Vous pouvez brancher promptfoo dans votre pipeline GitHub Actions ou GitLab et chaque pull request qui touche un prompt est automatiquement testée. Bah oui, on a des tests unitaires pour le code depuis 30 ans, mais pour les prompts, jusqu'ici c'est même plutôt le far west !

Bon après, faut pas se mentir non plus, écrire des assertions pour du texte non-déterministe, c'est un autre sport que du assertEqual. Le llm-rubric qui utilise un LLM pour juger un autre LLM, c'est pas con mais ça ajoute aussi une couche de "flou" donc à vous de trouver le bon dosage dans vos tests.

L'équipe a annoncé rejoindre OpenAI début mars ce qui est plutôt une bonne nouvelle pour le développement du projet... mais pas forcément pour l'indépendance quand on évalue les modèles OpenAI avec un outil OpenAI (on verra bien hein ^^ lol).

L'orchestration tourne en local sur votre machine (les prompts partent chez les providers pour l'évaluation, mais vos fichiers YAML, vos logs et résultats JSON restent sur votre disque dur), c'est sous licence MIT, et y'a déjà plus de 300 000 utilisateurs, ce qui est quand même pas mal !

Voilà, comme ça plutôt que de croiser les doigts à chaque déploiement, en espérant ne pas vous faire virer, autant tester ses prompts comme on teste son code.

notebooklm-py - L'API Python que Google refuse de sortir

Google n'a jamais sorti d'API publique pour NotebookLM , son outil qui transforme vos documents en podcasts, quiz et autres résumés grâce à l'IA. Pas de SDK, pas de CLI, y'a rien du tout alors on est tous triiiiiste. A peine juste une interface web avec ses boutons moches et ses menus déroulants, mais impossible à scripter ou à intégrer dans le moindre pipeline bash.

Mais un dev bien inspiré a reverse-engineeré les endpoints REST internes et a pondu notebooklm-py, une lib Python de 168 Ko qui fait tout ce que le web UI refuse de faire. Franchement, c'était pas trop tôt ! Vous en avez rêvé, lui l'a fait !

Un pip install notebooklm-py et voilà, vous avez accès à toute la machinerie Notebook LM à savoir : créer des notebooks, injecter des sources (URLs, PDF, vidéos YouTube, fichiers Google Drive, documents Word, images PNG), poser des questions à vos docs, et surtout générer du contenu... podcasts audio en MP3, vidéos explicatives en MP4, quiz, flashcards, slides en PPTX, infographies en PNG, mind maps en JSON.

Carrément dingue ! Et tout ça pilotable depuis votre terminal zsh ou en script Python async.

En fait, le vrai bonus c'est que la lib déverrouille des fonctionnalités que l'interface web ne propose même pas comme télécharger tous vos podcasts d'un coup en batch au lieu de cliquer un par un sur chaque fichier MP3, exporter vos 50 flashcards en JSON structuré au lieu de juste les afficher à l'écran ou encore récupérer vos slides en PPTX éditable plutôt que le PDF figé.

Ce genre de features, on avait fini par accepter que Google s'en fiche mais pourtant, extraire l'arbre complet d'une mind map en JSON pour la balancer dans D3.js ou Mermaid... clairement c'est un truc que Google aurait dû proposer depuis le début !

Côté CLI, c'est propre. Vous vous authentifiez une fois via notebooklm login (ça ouvre Chromium via Playwright pour choper les cookies de session Google), puis vous enchaînez les commandes.

notebooklm create "Ma Recherche" pour créer un notebook vide,

notebooklm source add ./mon-rapport.pdf pour balancer vos fichiers,

notebooklm generate audio "rends ça punchy" --wait pour lancer la génération de podcast,

et notebooklm download audio ./podcast.mp3 pour récupérer le MP3 sur votre disque.

On peut même éditer ses slides individuellement avec des prompts en langage naturel, du genre "ajoute un graphique sur cette slide-là" !

Pour ceux qui veulent brancher ça dans leurs pipelines, y'a comme je le disais l'API Python async complète. Vous pouvez donc monter un petit cron qui ingère vos derniers bookmarks le vendredi soir, et génèrer un résumé audio de 5 minutes, puis balancer le MP3 directement sur votre NAS Synology.

D'ailleurs, si vous avez déjà joué avec des outils pour booster votre productivité avec l'IA , c'est un peu dans la même veine... sauf qu'ici on tape directement dans les tripes des serveurs Google, sans intermédiaire. Ça tourne avec du Python, et y'a même un mode "agent" (un skill en fait) pour brancher ça dans Claude Code ou Codex. Pas mal, hein ?

Le fait que ça gère aussi la recherche web et Drive avec import automatique des résultats dans vos notebooks, c'est top, un peu comme Oboe qui génère des cours complets via IA , mais en version terminal. Et surtout, pas d'abonnement mensuel à payer, c'est votre propre compte Google qui fait tourner la machine.

Bien sûr, ça reste du reverse-engineering d'APIs non-documentées de Google, ce qui fait que les endpoints REST peuvent changer du jour au lendemain et tout péter. Le projet le dit clairement, c'est plutôt taillé pour du prototypage, de la recherche ou des projets perso et SURTOUT PAS pour de la prod sur un serveur Nginx en front avec 10 000 utilisateurs prêts à ruer dans les brancards en cas de panne.

Et puis faut quand même s'authentifier via un vrai compte Google avec Playwright et Chromium, donc pas question de faire tourner ça sur un serveur headless sans un minimum de config.

Bref, tant que Google ne coupe pas ses endpoints, c'est open bar.

Profitez-en !

OpenRAG - Le RAG clé en main qui vous évite 3 jours de galère

Monter un pipeline RAG, c'est un peu le parcours du combattant... entre le choix de la base vectorielle, le modèle d'embedding, l'orchestrateur, le parser de documents, vous en avez pour des heures de config avant de pouvoir poser la moindre question à vos PDF.

Mais c'était sans compter sur OpenRAG qui emballe tout ça dans un seul paquet prêt à l'emploi !

En gros, c'est un package open source (Apache 2.0) qui vous colle un orchestrateur visuel, un moteur de recherche vectorielle et un parser de documents hyper costaud, le tout déjà branché ensemble. Bon, dit comme ça, on dirait juste un assemblage de trucs existants... sauf que l'architecture est propre (FastAPI derrière, Next.js devant) et que tout est câblé d'entrée.

L'installation tient en une commande : uv run openrag (il vous faudra Python 3.10+ et uv, le gestionnaire de paquets rapide en Rust) et ensuite vous aurez un serveur local avec une interface de chat prête à bouffer vos documents. Vous uploadez vos fichiers (PDF, Word, HTML, Markdown...), le système les découpe, les indexe, et vous pouvez commencer à poser des questions dessus. Pas besoin de choisir un modèle d'embedding, de configurer une base Chroma ou Qdrant, ni de câbler un pipeline LangChain à la main. C'est plutôt confortable comme outil !

Et c'est pas juste un chatbot documentaire puisque la plateforme déploie une couche agentique qui va bien au-delà de la simple recherche de similarité. En fait, quand vous posez une question, le système ne se contente pas de chercher le passage le plus proche dans vos documents... il reformule, il croise plusieurs sources, il re-classe les résultats par pertinence. Et tout ça se configure visuellement dans Langflow, en mode drag-and-drop, sans écrire une ligne de code.

L'interface d'OpenRAG

D'ailleurs, pour ceux qui veulent aller plus loin, y'a des SDK Python et JavaScript pour intégrer ça dans vos propres apps. Un petit pip install openrag-sdk et vous pouvez interroger votre base documentaire depuis n'importe quel script. Et l'autre truc super chouettos, c'est le serveur MCP intégré : un pip install openrag-mcp et vous connectez directement votre base de connaissances à Claude Desktop ou Cursor. J'utilisais pour ma part LEANN jusqu'à présent mais je pense que je vais basculer rapidement sur OpenRAG. Et grâce à ça votre IDE / Claude Code / Ce que vous voulez, a accès à toute votre documentation technique sans quitter l'éditeur.

Côté technique, le projet est porté par l'équipe de Langflow (DataStax), ce qui explique la qualité de l'intégration. Et le déploiement se fait aussi en Docker, Podman ou Kubernetes pour ceux qui veulent du plus fiable.

Après comme c'est une solution tout-en-un, ça embarque pas mal de dépendances. OpenSearch à lui seul est connu pour être gourmand en ressources et si vous avez déjà votre propre stack RAG bien rodée avec une base vectorielle légère comme LEANN , c'est peut-être overkill. En fait, OpenRAG s'adresse plutôt à ceux qui partent de zéro ou qui veulent un truc clé en main pour une équipe, parce que tout est déjà branché.

Prêt à chatter avec vos docs ?

Le vrai intérêt par rapport à un assistant comme Khoj , c'est le côté plateforme extensible. Langflow vous permet de construire des workflows RAG personnalisés visuellement, d'ajouter des étapes de filtrage, de brancher plusieurs LLM en parallèle, ou de créer des agents spécialisés par type de document. C'est donc clairement plus "usine" que "bricolage"... mais parfois c'est ce qu'il faut, surtout si vous bossez en équipe et que le bricolage perso finit toujours par casser au bout de 3 mois.

Si vous en avez marre de bricoler vos pipelines de recherche augmentée à la main, allez jeter un œil !

psmux - Le vrai tmux natif pour Windows (sans WSL)

Splitter son terminal en plusieurs panneaux, gérer des sessions persistantes, le tout avec les mêmes raccourcis que tmux... mais sous un bon gros Windows des familles, nativement, en Rust et sans avoir besoin de se galérer avec WSL !

C'est exactement ce que fait psmux , un multiplexeur de terminal conçu pour PowerShell et cmd.exe qui utilise directement l'API ConPTY de Windows 10/11. Du coup, pas de couche d'émulation Unix, pas de Cygwin, pas de MSYS2... ça tourne direct sur votre bécane.

Pour ceux qui débarquent, un multiplexeur de terminal ça permet de découper votre console en plusieurs zones (des "panes" que j’appellerai "panneau" parce que merde c'est + français), de jongler entre plusieurs sessions, et surtout de retrouver votre boulot exactement là où vous l'avez laissé même après une déconnexion. Sous Linux, tout le monde utilise tmux pour ça mais sous Windows, jusqu'ici c'était soit WSL (installer tout un sous-système Linux juste pour splitter un terminal, c'est un peu overkill quand même !), soit des splits basiques via Windows Terminal qui ne gèraient ni les sessions persistantes ni le détachement. Snif...

psmux en action sous PowerShell

L'installation est rapide. Un petit winget install psmux et hop, c'est réglé. Ça passe aussi par Cargo, Scoop ou Chocolatey pour les puristes. Ensuite, vous tapez psmux dans PowerShell 7 et vous retrouvez vos marques : Ctrl+B pour le prefix, les mêmes commandes split-window, new-session, attach... L'outil implémente 76 commandes tmux avec plus de 126 variables de formatage. Et y'a même un mode copie Vim avec 53 raccourcis clavier.

Bref, si vous avez une mémoire musculaire ultra développée pour tmux, vous êtes chez vous !

Et le truc cool, c'est que psmux lit directement vos fichiers .tmux.conf existants. Du coup, vos raccourcis custom et pas mal de thèmes (Catppuccin, Dracula, Nord...) fonctionneront directement, même si les configs tmux les plus complexes avec des scripts bash ou TPM peuvent nécessiter des ajustements. Et y'a aussi Tmux Plugin Panel pour vous accompagner dans l'ajout de plugins et de thèmes.

Alors je vous connais les raloux sous OuinOuin, vous allez me dire "Windows Terminal fait déjà des splits avec Alt+Shift+D"... sauf que non, c'est pas pareil. Windows Terminal découpe votre fenêtre visuellement mais ne gère ni les sessions persistantes, ni le scripting, ni le détachement. Avec psmux, vous lancez une session le lundi, vous fermez votre terminal, vous revenez le mardi et tout est encore là : vos panneaux, vos processus, votre historique. C'est ça la vraie différence avec un simple split visuel.

D'ailleurs, si vous utilisez Claude Code ou d'autres agents IA en ligne de commande , psmux intègre un support pour les agent teams qui permet à chaque agent de spawner dans son propre panneau automatiquement.

Côté support souris, c'est complet : clic pour sélectionner un panneau, drag pour redimensionner les bordures, molette pour remonter dans l'historique du buffer. Tout est activé par défaut, pas besoin de rajouter set -g mouse on comme sous tmux. L'outil tourne sous Windows 10 et 11, et le projet est sous licence MIT.

Après c'est encore jeune et y'a quelques galères connues notamment le support des caractères CJK et UTF-8 multi-octets qui peut se planter comme une merde sur des textes longs. Et split-window -c ne préserve pas toujours le répertoire courant (oubliez pas de vérifier votre pwd après un split). Par contre, le dev répond en quelques heures, et des PR externes sont mergées régulièrement... donc c'est bon signe !

Bref, c'est propre, c'est natif, et ça lit vos .tmux.conf ! Que demande le peuple barbu emprisonné sous Windows, finalement ? Eh bien pas grand chose de plus pour être heureux.

ISS Tracker - Suivez la station spatiale sur un Raspberry Pi

La Station Spatiale Internationale file à 28 000 km/h au-dessus de nos têtes, et y'a un mec qui a décidé de suivre ça en direct depuis un petit écran 3.5 pouces posé sur un Raspberry Pi 3b. Le projet s'appelle ISS Tracker , c'est open source, et franchement... c'est plutôt classe !

Concrètement, l'écran affiche un globe terrestre en 3D qui tourne, avec la position de l'ISS en temps réel. Latitude, longitude, altitude, vitesse, et même la région survolée. En fait, la position est récupérée toutes les 30 secondes via des APIs gratuites et interpolée entre les mises à jour pour que le rendu reste fluide. Vous branchez le câble micro-USB, vous attendez le boot, et ça tourne tout seul !

L'ISS Tracker monté au mur, façade alu et globe 3D sur l'écran

Côté matos, c'est sobre : un Pi 3b (ou plus récent), un écran LCD Waveshare 3.5 pouces qui se clipse directement sur le GPIO, et un interrupteur à bascule optionnel. Celui-là, c'est la petite touche sympa effet NASA. En un coup de "switch", vous passez ainsi du tracking orbital à la liste des astronautes actuellement en orbite, groupés par vaisseau. Du coup vous savez qui est là-haut en ce moment, et dans quel engin (merci Lorenper).

Mais le truc vraiment cool dans ce projet, c'est le boîtier. Filbot a imprimé la structure en 3D avec du PLA renforcé carbone (les fichiers STL sont sur MakerWorld ), puis a fraisé la façade en aluminium sur sa CNC personnelle. Plus d'une heure d'usinage pour une plaque (les vrais machinistes pleurent ^^) et la cerise sur la Lune (non c'est pas une hallucination IA, c'est juste que je suis fou) c'est qu'il a séché la peinture dans la chambre chauffée de son imprimante 3D. L'IA qu'il a utilisée pour le guider lui a dit que c'était du génie... on va pas la contredire.

Pour la touche finale, une décalcomanie en transfert à l'eau avec le logo NASA "worm" et des données inventées pour faire officiel + le garde-interrupteur en alu style aviation qui protège le switch, c'est purement cosmétique mais ça envoie grave !

Le globe 3D en action avec la position de l'ISS et la télémétrie

Sous le capot, le globe est affiché sous forme de 144 frames pré-calculées avec Cartopy . Au premier lancement, comptez quelques minutes sur un Pi 3b pour générer le cache et ensuite ça démarre en 3 secondes. Par contre, attention, il faut augmenter le buffer SPI à 307 200 octets parce que le défaut de 4 Ko est beaucoup trop petit pour pousser des frames complètes sur l'écran. Oubliez pas ça, sinon l'affichage ne marchera pas.

D'ailleurs, si vous voulez que l'engin tourne H24, y'a un service systemd fourni avec watchdog, auto-restart et limitation mémoire à 250 Mo. Notez que le fichier theme.toml permet de changer toutes les couleurs, polices et le layout sans toucher au code. Ambiance cockpit Boeing par défaut (labels verts, valeurs blanches sur fond noir), mais vous pouvez faire du cyan fluo si ça vous chante et que vous avez des goûts de chiottes ^^.

Les APIs utilisées sont toutes gratuites et sans clé : Where the ISS at? en principal, Open Notify en fallback. Pas d'inscription, pas de token, ça marche direct ! Et si vous aimez les projets Raspberry Pi dans cet esprit, vous pouvez jeter un œil au rover martien à imprimer en 3D ou aux talkies-walkies DIY à base de Pi.

Bref, de quoi kiffer ses soirées à regarder un point lumineux traverser le globe. C'est plutôt méditatif !

Source

Ebooks auto-hébergés - La jungle des outils pour lire librement

Depuis qu'Amazon a supprimé le "Télécharger & transféré via USB" de nos ebooks Kindle en février de l'année dernière je suis triste de fou... Si vous n'avez pas de Kindle, en fait ça veut dire que nos fichiers .azw3 restent prisonniers de l'app Kindle, et qu'il est impossible de les balancer ensuite sur une liseuse Kobo ou dans Calibre. Du coup, si vous voulez garder le contrôle sur vos e-bouquins, faut se retrousser les manches et héberger tout ça soi-même.

Alors voilà le topo pour ceux qui veulent reprendre leur bibliothèque en main.

Le vétéran du game, c'est Calibre . Depuis 2006, une base de données SQLite bien rangée, une communauté énorme et un écosystème de plugins (dont le fameux DeDRM pour récupérer vos ebooks verrouillés ). Le problème c'est que l'interface est restée coincée en 2006 et que la mise en place sur un serveur est plus complexe que les alternatives modernes. Ça marche, mais bon... c'est moche et c'est un peu pénible !

Pour mettre une jolie couche de peinture là-dessus, y'a aussi Calibre-Web qui ajoute une interface web potable. Et la version encore mieux, c'est Calibre-Web Automated (CWA) qui embarque tout dans un seul conteneur Docker (un docker-compose.yml et c'est plié)... avec sync Kobo, import via BookDrop (un dossier surveillé) et conversion EPUB/MOBI/AZW3 automatique. CWA consomme environ 160 Mo de RAM contre plus de 800 Mo pour Booklore (qui en Java peut taper dans le 1 Go+ à vide), ce qui est pas négligeable si vous tournez sur un Raspberry Pi ou un petit VPS.

D'ailleurs, parlons de Booklore . Sur le papier, c'est le Jellyfin des ebooks : metadata auto depuis Google Books, Goodreads et Amazon, sync OPDS avec Kobo et KOReader, Magic Shelves avec filtres automatiques, lecteur intégré pour EPUB, PDF et CBZ... Sauf que le dev a récemment pété un câble. Télémétrie cachée envoyée sans consentement, code largement généré par IA (du "AI slop" c'est-à-dire du code vomi par ChatGPT sans relecture), et quand la communauté a râlé, le mec a répondu en gros "si ça vous plaît pas, désinstallez". Puis il a posté des excuses... générées par ChatGPT. Grosse ambiance ouais ouais.

Pour ceux qui lisent aussi des comics et des mangas, Kavita est une alternative sérieuse. Léger, interface clean, lecteur web rapide, et ça gère aussi bien les EPUB que les CBZ. Y'a aussi Komga dans la même catégorie, plus orienté comics purs. Perso, Kavita est le choix le plus équilibré du lot parce que ça couvre ebooks ET comics sans se prendre la tête. Testé avec des bibliothèques de 50 000 fichiers et plus, ça tient clairement la route.

Et hop, la pépite que beaucoup ignorent c'est Audiobookshelf . À la base c'est fait pour les audiobooks, mais ça gère aussi très bien les EPUB. Le gros avantage c'est qu'un même bouquin peut appartenir à plusieurs séries (genre l'univers Cosmere de Sanderson avec Stormlight Archives ET Mistborn dedans).

Calibre ne le gère pas nativement (faut bidouiller avec des colonnes custom) mais le setup simple, y'a deux ans de retours positifs, et toujours pas de drama en vue.

Côté automatisation maintenant, c'est la zone dans le ter-ter les amis ! Readarr est officiellement abandonné, LazyLibrarian fait le taf mais l'interface est tellement chelou que franchement personne ne comprend ce qu'il regarde. Ah mais y'a aussi le petit nouveau Rreading Glasses , qui est un successeur en alpha (dispo sur Docker Hub ). Donc en attendant mieux, Shelfmark wrappe Prowlarr et pousse directement vos trouvailles vers Booklore ou CWA... ça retire au moins l'étape de la copie manuelle !

Readarr a été remplacé par Rreading-glasses

Je sais, ça fait beaucoup d'outils alors pour vous aider, sachez que le combo qui revient le plus souvent chez les gens qui ont tout essayé c'est CWA pour la gestion et le stockage, Kavita ou Audiobookshelf pour la lecture, et Shelfmark pour la recherche. Bon, c'est pas aussi sexy qu'un Plex clé en main, mais ça marche. Et si vous voulez juste un lecteur multi-plateforme sans vous prendre la tête avec un serveur, Readest est une option open source plutôt pas mal avec sync cross-device.

Bref, gardez un œil sur Rreading Glasses qui promet d'être le Sonarr des livres et en attendant, Calibre reste le cafard du self-hosting : moche, mais indestructible !

IPED - Fouiller un disque dur comme la police

Si vous vous êtes déjà demandé comment les flics font pour fouiller un disque dur saisi chez un suspect, la réponse tient en quatre lettres : IPED . C'est l'outil que la police fédérale brésilienne a développé en interne depuis 2012 pour analyser les preuves numériques... et qui est devenu open source en 2019.

N'importe qui peut aujourd'hui donc télécharger le même logiciel que celui utilisé par les enquêteurs pour décortiquer des scènes de crime numériques. J'vous parle d'un truc qui avale 400 Go de données à l'heure, ce qui à vrai dire c'est plutôt le débit d'un SSD NVMe que d'un logiciel d'analyse. Et ça gère des multicases de 135 millions d'éléments. Ouais, rien que le chiffre donne le vertige !

En gros, le principe c'est de balancer une image disque (DD brut, conteneur E01, machine virtuelle VMDK, VHD Hyper-V, AFF... la totale) et IPED va indexer, analyser, hasher en MD5 et SHA-256, et trier tout ce qu'il trouve. Le logiciel supporte une quarantaine de formats pour le carving, fait de l'OCR via Tesseract 5, parse l'historique des navigateurs, et peut même transcrire de l'audio grâce à Azure ou Google Cloud. Vous avez même un moteur de recherche plain-text sur l'intégralité d'un disque !

L'interface d'analyse d'IPED avec sa recherche plein texte et l'aperçu des fichiers

Et surtout, le truc qui tue c'est la reconnaissance faciale intégrée... car elle tourne sans GPU !! La v4.3 sortie fin 2025 pousse même le délire encore plus loin avec l'estimation d'âge sur les visages détectés et le support multi-visages par image. Pour les forces de l'ordre, y'a aussi PhotoDNA (étendu aux vidéos dans cette version) et une tâche de classification CSAM... bref du lourd pour la lutte contre la pédocriminalité !

La reconnaissance faciale intégrée trie automatiquement les visages détectés

Mais attention, c'est pas juste un outil de flics. Si vous bossez en cybersécurité, en réponse à incident, ou si vous êtes juste curieux de comprendre ce qui traîne sur un vieux disque dur récupéré , IPED fera très bien le taf. Le logiciel propose plusieurs profils de traitement : forensic (analyse complète), triage (scan rapide), fastmode (indexation sans parsing lourd), et même un mode "blind" pour les cas où vous ne savez pas trop ce que vous cherchez.

Vous faites pointer l'outil sur une image disque, vous choisissez votre profil, et en quelques minutes il vous sort une interface Swing (oui, c'est pas forcément la plus belle du monde, oubliez pas que c'est du Java) avec tous les fichiers indexés, une timeline d'activité, les historiques de navigation, les conversations de messagerie et même une galerie de toutes les images triées par visage. Le tout sans avoir à monter l'image manuellement.

La timeline unifiée permet de retracer toute l'activité chronologique du disque

Faudra donc un JDK 11 avec JavaFX inclus (genre Liberica ou Azul, parce que le JDK standard ne bundle plus JavaFX... snif) puis faites un petit git clone et un mvn clean install pour déployer tout ça.

Ça fonctionne sous Windows et Linux, mais pas de support macOS natif par contre. Et prévoyez au moins 16 Go de RAM, vu les volumes que ça traite. Le projet est solide mais je tiens quand même à souligner que le dev principal porte à lui seul plus de la moitié des commits... c'est courant sur ce type de projet mais c'est vraiment dommage car c'est d'utilité publique !

La v4.3 a aussi ajouté la validation de phrases mnémoniques crypto (pour détecter des seed phrases sur un disque, genre le même principe que quand le FBI demande les clés BitLocker sauf que là c'est vous qui cherchez), le support BitTorrent via Transmission, le carving 7zip, HEIC, WebM et MKV, et un parseur NSKeyedArchiver pour les dumps iOS. Et si vous devez analyser le backup d'un iPhone, y'a carrément moyen.

Le moteur de carving récupère et affiche les fichiers avec leurs miniatures

Après la doc est assez éparse... le wiki GitHub ne couvre pas toujours les cas limites et faut parfois fouiller dans les issues pour trouver la bonne config. Mais bon, franchement, c'est le jeu de l'open source. Quand c'est "gratuit" c'est ton temps le "produit" ^^.

Bref, si vous avez un vieux disque qui traîne dans un tiroir, c'est l'occasion de jouer les enquêteurs du dimanche !

Basalt - Vos coffres Obsidian direct dans le terminal

Un TUI en Rust pour gérer vos coffres Obsidian sans quitter le terminal c'est ce que propose Basalt qui détecte automatiquement vos vaults, affiche le markdown avec un rendu visuel, et depuis la v0.12.3, y'a même un mode vim intégré. Le tout sans avoir besoin que la vraie app tourne en arrière-plan !

Et c'est là toute la différence avec le CLI officiel d'Obsidian dont je vous parlais il y a quelques jours. Car le CLI a besoin de l'app qui tourne via un socket local. Basalt, lui, lit en fait vos fichiers .md directement sur le disque. Du coup, ça marche en SSH, sur un serveur headless, ou sur n'importe quelle machine où vous avez juste vos fichiers markdown. C'est carrément pratique !

L'installation se fait en une commande :

cargo install basalt-tui

Au premier lancement, l'outil va alors chercher automatiquement vos coffres en lisant le fichier de config (sous macOS c'est dans ~/Library/Application Support/obsidian/obsidian.json). Comme ça, hop hop, vos vaults apparaissent, vous naviguez au clavier et vous passez d'un coffre à l'autre avec Ctrl+G. Vous pouvez aussi passer par aqua ou télécharger un binaire pré-compilé sur la page releases si vous préférez.

Basalt en action, navigation dans un vault Obsidian

Vous ouvrez alors une note et le markdown s'affiche avec un rendu visuel : les # disparaissent au profit d'indicateurs plus colorés, les blocs de code ont un fond distinct, les callouts > [!NOTE] sont reconnus, et les wiki-links [[Ma Note]] sont également parsés. D'ailleurs, quand vous renommez une note avec r, tous les wiki-links qui pointent vers elle sont mis à jour automatiquement dans tout le vault. Pas de search-replace à la main, ça fait toujours du bien !

Après faut pas s'attendre à un clone complet non plus. Y'a pas de rendu pour le gras, l'italique ou les tableaux. Pas de recherche dans les notes. Pas de graph view. L'éditeur intégré est expérimental (pas d'undo, pas de copier-coller, pas de sélection). C'est assumé de ce que j'ai pu voir, car le projet se présente comme un compagnon minimaliste.

Et c'est justement pour ça que le mode vim est le bienvenu, à vrai dire. Vous pouvez activer ça dans votre config TOML comme ceci :

vim_mode = true

Le mode vim en action dans Basalt

Et là vous avez hjkl pour naviguer, gg / G pour sauter en haut et en bas, w / b pour les mots, i pour l'insertion. C'est pas forcément aussi complet qu'un vrai vim, mais franchement, pour parcourir vos notes c'est agréable.

Le vrai kiff, c'est la config TOML qui permet de lancer un éditeur externe sur la note en cours :

[global]
key_bindings = [
 { key = "ctrl+alt+e", command = "exec:vi %note_path" },
]

Du coup, le workflow devient : Basalt pour naviguer et lire et un raccourci clavier pour ouvrir dans vim (ou n'importe quel éditeur) quand vous voulez éditer sérieusement. C'est le genre de combo qui fonctionne bien quand vous bossez en full terminal .

Le projet est sous licence MIT, écrit en Rust avec ratatui, et tourne sur Linux, macOS et Windows. Tiens, la v0.12.3 ajoute aussi la création de notes et dossiers directement depuis l'explorateur avec n et N... Ça avance plutôt vite comme projet !!

Voilà, si vos notes vivent dans des coffres et que le terminal c'est votre habitat naturel, Basalt fera bien le boulot.

Scanopy - Quand votre réseau se documente tout seul

Faut le reconnaitre, la doc et qui plus est, la doc réseau, c'est un peu le parent pauvre du homelab. Tout le monde sait qu'il faudrait la tenir à jour sur un petit wiki tout mignon mais personne le fait parce qu'on n'est pas cinglé et qu'on aime trop la vie pour ça. Heureusement, pour nous aider, y'a maintenant Scanopy qui est un outil open source qui scanne automatiquement votre réseau pour générer une topologie interactive incroyable qui se met à jour toute seule !

Pour l'installer, deux lignes suffisent :

curl -O https://raw.githubusercontent.com/scanopy/scanopy/refs/heads/main/docker-compose.yml
docker compose up -d

Et hop, l'interface est dispo sur le port 60072 de votre serveur ! Pas de config.

Concrètement, le truc balance du scan ARP pour trouver tous les hôtes (même ceux qui n'ont aucun port ouvert), puis il enchaîne avec un scan des 65 000 ports sur chaque machine qui répond. Comme ça, en quelques minutes sur un /24 classique, vous avez la cartographie complète de votre sous-réseau avec les services qui tournent dessus. Et quand je dis services, c'est pas juste "port 80 ouvert" puisque cet outil de zinzin reconnaît plus de 200 applis self-hosted comme Home Assistant, Plex, Jellyfin, PostgreSQL ou nginx. Par contre, attention, un scan de 65 000 ports sur tout un sous-réseau, ça peut chatouiller un peu votre IDS (système de détection d'intrusion) si vous en avez un.

D'ailleurs, si vous avez des équipements réseau un peu sérieux (switches manageables, routeurs), Scanopy sait aussi causer SNMP v2c et récupérer les données LLDP/CDP pour reconstituer les liens physiques entre vos appareils.

Et pour ceux qui font tourner pas mal de containers, il se branche directement sur le socket Docker pour détecter tout ce qui tourne là-dedans. En fait, c'est surtout cette combo "scan réseau + détection Docker" qui le rend utile, parce que la plupart des outils du genre font l'un ou l'autre mais jamais les deux.

L'interface de visualisation est plutôt classe comme vous pouvez le voir. Vous avez une vue topologique interactive où chaque hôte est cliquable, avec un système de branches et de versioning pour suivre l'évolution de votre réseau dans le temps (un peu comme Git, mais pour votre infra). Et y'a même de l'export en CSV, PNG et SVG. Et surtout la possibilité de partager des liens publics vers vos schémas... C'est franchement pratique quand vous bossez en équipe ou que vous devez montrer à votre boss pourquoi le NAS de votre PME rame sa mère.

Côté tambouille technique, c'est du Rust pour le moteur de scan et du Svelte pour l'interface, le tout sous licence AGPL-3.0. En gros, vous avez un serveur qui héberge l'UI et stocke les données, et des daemons qui font le boulot de scan à proprement parler. Tout est containerisé, comme ça pas besoin d'installer un agent sur vos machines côté réseau... c'est complètement agentless quoi. D'ailleurs, si vous aviez l'habitude de balancer des scans nmap à la main pour savoir ce qui traîne sur votre réseau, Scanopy automatise tout ça et rajoute la couche visu par-dessus.

Le projet est hébergé sur GitHub et y'a aussi un déploiement possible via Proxmox ou Unraid pour ceux qui préfèrent. Seul prérequis, il vous faudra Docker et Docker Compose sur votre machine. Et n'oubliez pas que le projet est encore jeune, du coup ça bouge pas mal d'une version à l'autre. Et ça casse parfois. Mais c'est plutôt bon signe parce que ça veut dire que ça progresse !

Bref, si vous en avez marre de dessiner vos schémas réseau à la main, c'est par là !

Source

Barista - Pilotez votre machine à café De'Longhi en HTTP

Vous avez une machine à café De'Longhi avec du Bluetooth et vous vous êtes déjà forcément dit "Mais pourquoi je dois me lever si tôt pour appuyer sur un putain de bouton comme un homme des cavernes" ?!

Hé bien bonne nouvelle mes petits accro aux café puisqu'un dev a passé ses soirées à sniffer les paquets BLE de sa Dinamica Plus, à reverse-engineerer le protocole de communication, et il en a fait un projet open source qui transforme votre cafetière en serveur HTTP. Du coup maintenant, un petit curl http://pi:8080/api/brew/espresso depuis le lit et hop, le café coule. En live depuis votre oreiller, vos petits yeux à moitié fermés en moins de 3 secondes.

Aaaaah, le bonheur !

Le projet s'appelle Barista et c'est en fait un bridge BLE-to-HTTP écrit en Python. Vous collez ça sur un Raspberry Pi Zero à 15 euros (ou n'importe quel ordi avec une puce Bluetooth) à côté de votre machine à café, ça se connecte en Bluetooth Low Energy, et ça expose une API REST complète. Ça permet ainsi de contrôler la préparation (espresso, cappuccino, latte, americano...), d'ajuster la force de l'arôme sur 5 niveaux, la température, la quantité en ml, et même d'activer la buse vapeur ou l'eau chaude à distance. Attention par contre, faut pas oublier de mettre une tasse sous le bec avant de lancer la commande depuis votre lit...

Côté technique, c'est du Python async avec la bibliothèque bleak pour la partie radio BLE et aiohttp pour le serveur HTTP local. En fait, le truc intéressant c'est que tout le protocole ECAM est documenté dans le repo... structure des paquets, calcul du CRC-16/CCITT, encodage des ingrédients, lecture et écriture des recettes. Donc si vous avez un autre modèle De'Longhi (Primadonna, Magnifica Evo, Eletta Explore), c'est théoriquement compatible vu que De'Longhi utilise le même protocole BLE sur sa gamme ECAM... mais seule la Dinamica Plus est testée et confirmée pour l'instant.

Le problème, vous l'aurez compris, c'est que De'Longhi ne documente pas son protocole BLE (va savoir pourquoi), donc y'a pas forcément de garantie que ça marchera du premier coup sur votre modèle.

Côté prérequis, il vous faut Python 3.11+ et BlueZ sur votre Raspberry Pi 4 ou 5 (le Bluetooth quoi). Après, l'installation tient en trois commandes : pip install barista-coffee, puis barista scan pour trouver votre machine, et enfin barista start --address AA:BB:CC:DD pour lancer le serveur.

Et là vous aurez une interface web sur le port 8080, avec une grille de boutons, un bouton par boisson... mais surtout une API REST qui permet d'intégrer ça avec à peu près n'importe quoi : Home Assistant , Node-RED, un cron job matinal, un raccourci Siri, un script Python... Perso, l'idée du réveil qui déclenche automatiquement un espresso, c'est quand même pas mal !

Évidemment, tout tourne en local ! Comme ça plutôt que de dépendre de l'app officielle De'Longhi (qui marche uniquement à 2 mètres de la machine ^^ donc autant appuyer sur le bouton à ce stade), là c'est du vrai contrôle réseau.

D'ailleurs si le sujet vous branche, on avait déjà listé une tonne de projets Raspberry Pi dont une machine à café pilotable à distance.

Voilà, si vous avez une De'Longhi avec Bluetooth qui traîne dans la cuisine et un Raspberry Pi qui prend la poussière, vous savez ce qu'il vous reste à faire.

Amusez-vous bien et moi j'vais aller me faire un café du coup !

CompHost - Compostez vos vieux Android en serveurs

Un vieux smartphone Android, c'est quoi en fait ? Un bon petit quad-core, 1 ou 2 Go de RAM, et du WiFi. Soit de quoi largement servir des pages web finalement... Hé bien CompHost vous montre comment en faire un serveur en quelques commandes, sans rooter quoi que ce soi. Vous faut juste Termux et basta !

En gros, vous installez Termux depuis F-Droid sur n'importe quel Android 7+ (pour Android 5-6, y'a également une version spéciale dispo sur GitHub), vous tapez pkg update && pkg upgrade -y puis termux-setup-storage -y, et hop, vous avez un environnement Linux sur votre téléphone.

Un vieux téléphone qui sert des pages web, la classe quand même

De là, un pkg install python suivi d'un python -m http.server 8080 et votre serveur web tourne ! Pensez surtout à lancer termux-wake-lock pour éviter qu'Android tue le processus en arrière-plan, sinon votre super site web ne sera pas accessible longtemps.

Le wiki fournit aussi des fiches PDF, une cheatsheet Termux et des présentations annotées pour ceux qui voudraient par exemple animer un atelier. Bref, j'ai trouvé ça plutôt bien ficelé !

D'ailleurs, j'sais pas si vous vous souvenais, mais je vous avais déjà parlé de Far Computer qui héberge un site sur un Fairphone 2 avec PostmarketOS, sauf que CompHost a une approche un peu différente. En fait y'a pas besoin de flasher l'OS ni besoin d'avoir un PC Linux sous la main et encore moins un bootloader à déverrouiller. Vous installez une app, vous ouvrez un terminal, c'est parti. Du coup c'est bien plus accessible, même si faut quand même être prêt à taper quelques commandes.

Le truc sympa avec Termux, c'est que ça tourne dans une sandbox Android classique, donc sans root et le gestionnaire de paquets pkg donne accès à tout ce qu'il faut pour héberger ce que vous voulez comme Python, Node.js, nginx...

Et aussi bizarre que ça puisse paraitre, votre vieux Samsung de 2018 a largement les specs pour servir un site statique, une petite API ou même un wiki perso. Et vu que ces machins consomment que dalle en électricité (2-3 watts à otut casser), c'est carrément viable comme micro-serveur permanent branché dans un coin (surveillez quand même l'état de la batterie, les vieilles cellules Li-ion n'aiment pas forcement rester en charge 24/7).

Après côté limites, attention, c'est pas pour iPhone et pour les Android vraiment antiques (genre Android 4 et moins), le wiki renvoie vers PostmarketOS qui flashe une vraie distrib Linux sur le mobile... là c'est plus technique, par contre.

Ce projet CompHost est dispo sur GitLab et comme ça, au moins, plutôt que de jeter vos appareils, vous leur filez une utilité concrète. Puis ça permet de piger ce qu'est vraiment un serveur web... Et quand je vois que certains montent même des clusters Kubernetes avec des vieux smartphones , je me dit que y'a vraiment un filon à creuser côté recyclage / compostage de vieux matos.

Et qui sait, peut-être qu'un jour, Korben.info tournera sur l'un de ces trucs ?

Google Antigravity - De gratuit à 275 € / mois sans prévenir

Google Antigravity, c'est gratuit. Enfin... c'était gratuit. Puis c'est passé à +20 balles par mois. Et maintenant, pour un usage sérieux, comptez 275 € par mois. Bienvenue dans le bait and switch version Google.

En novembre, je vous présentais l'IDE agent-first de Google et à l'époque, c'était en preview publique, gratuit, avec des quotas "très généreux" selon Google. Même Linus Torvalds s'en servait pour ses projets perso en mode vibe coding. La hype était bien réelle !

Sauf qu'un lecteur, FX, m'a envoyé son retour d'expérience et à vrai dire, c'est édifiant. En décembre, il teste l'outil sur sa machine, profite de l'accès gratuit aux modèles Gemini Pro, Claude Opus et Sonnet. Le gain de productivité en Python et Flutter est franchement bon.

Trop beau pour durer, évidemment.

Mi-janvier, hop, la plateforme passe à 21,99 €/mois avec la promesse d'un, je cite "high, generous quota, refreshed every five hours". OK, pourquoi pas, ça reste correct pour un IDE dopé à l'IA. Par contre les quotas exacts ne sont écrits nulle part. Google parle juste de limites "high", "generous", "meaningful"... sans jamais donner un chiffre.

Et là, mi-février, sans aucune communication, les modèles Anthropic deviennent ultra-limités. Pas de mail, pas d'annonce. Du coup l'ami FX bascule sur Gemini Pro (qu'il trouve moins pertinent) et doit même installer une extension tierce, Antigravity Cockpit, juste pour suivre sa consommation.

Et mi-mars, rebelote. Gemini Pro se fait ratiboisser à son tour. En pleine semaine, des utilisateurs se retrouvent alors bloqués jusqu'au refresh hebdomadaire. Sur le forum officiel Google , un thread rapporte des lockouts de 3 à 10 jours... alors que la promesse c'était un refresh toutes les 5 heures. Google s'est excusé via un modérateur sur le forum, mais bon, des excuses ça ne compile pas du code et ça ne relance pas un pipeline.

Suite à ça, Google a alors discrètement modifié ses conditions pour retirer la mention "that refresh every 5 hours". Un utilisateur a retrouvé l'ancienne version sur Archive.org et quand il a demandé à l'IA Gemini si c'était légal... le modèle a répondu que non. Lol...

Le problème, c'est que les chiffres sont assez violents. Par exemple, un dev qui témoigne sur Reddit documente cette chute drastique : il consommait plus de 300 millions de tokens en input par semaine. Après le changement, il tape dans le mur à moins de 9 millions. Sacré différence quand même... on est passé du buffet à volonté au régime pain sec sans prévenir.

Et tout ça nous pousse vers un seul et unique endroit : le forfait AI Ultra à 275€/mois. Hé oui les amis, le plan AI Pro à 21,99 € n'est plus qu'une coquille vide... A ce tarif, Anti Gravity n'est plus qu'un fork de VS Code qui ne peut plus rien faire de sérieux en mode agentique. Donc d'abord on rend accro avec du gratuit, puis on serre la vis mois après mois jusqu'à ce que le seul choix raisonnable soit de sortir la carte bancaire pour un abonnement 12 fois plus cher. Du bait and switch dans les règles de l'art, j'vous dis !

Bon, soyons honnêtes, c'est pas la première fois que Google fait le coup. Le playbook est toujours le même : lancer gratuit avec des quotas délirants, laisser les gens construire leurs habitudes, puis monétiser. L'API Google Maps, YouTube Premium, Workspace... la recette ne change pas et ça marche à chaque fois !

Voilà donc pour ceux qui cherchent des alternatives, y'a toujours Cursor (20$/mois) et Windsurf (15$/mois) qui restent dans la course côté IDE IA. Par contre ça ne veut pas forcément dire qu'ils ne feront pas pareil un jour, n'oubliez pas. Et si vous êtes prêts à mettre les mains dans le terminal, Claude Code fait le taf en CLI pour 20$/mois aussi. Perso, c'est ce que j'utilise au quotidien, car les quotas sont hyper clairs dès le départ, donc pas de mauvaise surprise.

Bref, merci à FX pour le retour d'expérience, et si vous êtes encore sur Antigravity... ben surveillez bien vos quotas.

Source

Microsoft va bientôt transformer votre PC Windows 11 en console Xbox

Microsoft a profité de la GDC 2026 pour annoncer l'arrivée du Xbox Mode sur tous les PC sous Windows 11 dès le mois d'avril. L'interface plein écran, pensée pour la manette, était jusqu'à présent réservée aux consoles portables ASUS ROG Xbox Ally.

Une interface console sur n'importe quel PC

Le Xbox Mode, c'est l'interface plein écran que les possesseurs (dont je suis) de ROG Xbox Ally et Ally X connaissent déjà. Un environnement épuré, optimisé pour la navigation à la manette, qui donne accès à toute votre bibliothèque de jeux sans passer par le bureau Windows. Vous lancez le mode, vous jouez, et vous pouvez revenir au bureau classique à tout moment.

Microsoft l'étend donc à tous les appareils sous Windows 11 : PC fixes, portables et tablettes. Le déploiement commence en avril dans certains marchés, avant une extension progressive au reste du monde.

Côté entreprise, le mode est disponible sur Windows 11 Pro mais désactivé par défaut sur les machines connectées à un réseau d'entreprise, avec la possibilité pour les administrateurs IT de le bloquer, parce qu’il ne faut pas déconner quand même bande de feignasses, on n'est pas là pour rigoler.

Le message aux développeurs est clair

Le vice-président Xbox Jason Ronald a été direct : pour développer pour Xbox à l'avenir, il faudra développer pour PC. Microsoft pousse le GDK unifié, son kit de développement qui permet de créer un jeu une seule fois et de le faire tourner sur PC et sur console.

Le catalogue Xbox Play Anywhere compte désormais plus de 1 500 jeux et 500 studios partenaires, et la progression se synchronise entre les appareils.

Et puis il y a Project Helix, la prochaine console Xbox. Asha Sharma, la patronne de la division, a confirmé qu'elle jouera à la fois aux jeux console et aux jeux PC. Les kits de développement alpha partiront chez les studios en 2027, ce qui repousse une sortie grand public à 2028 au plus tôt.

Un PC qui fait console, ou une console qui fait PC ?

La vraie question derrière tout ça, c'est la fusion entre PC et Xbox. Microsoft ne veut plus que les joueurs choisissent entre les deux, et le Xbox Mode est le premier morceau visible de cette stratégie.

Sur le papier, pouvoir basculer entre Windows et une interface console avec un bouton, c'est exactement ce que les possesseurs de PC portables gaming et de handhelds demandaient. Reste à voir si l'interface sera aussi fluide sur un PC classique que sur un Ally X conçu pour.

Cette annonce est clairement un gros coup de la part de Microsoft. Transformer n'importe quel PC Windows 11 en quasi-console Xbox, c'est malin, et ça répond à un vrai besoin pour tous ceux qui branchent une manette sur leur portable. Le fait que Play Anywhere dépasse les 1 500 jeux est aussi un bon signal.

Sources : Windows Central , WCC Tech

Google lance Gemini Embedding 2, un modèle qui comprend texte, image, vidéo et audio en même temps

Google vient de lancer Gemini Embedding 2, son premier modèle d'embedding nativement multimodal. Texte, images, vidéo, audio et documents sont projetés dans un même espace vectoriel, ce qui permet de faire de la recherche sémantique croisée entre différents types de contenus.

Un seul modèle pour tout indexer

Jusqu'à présent, les modèles d'embedding se limitaient au texte. Vous vouliez indexer des images ou de la vidéo, il fallait un autre pipeline. Gemini Embedding 2 fait tout d'un coup : vous lui envoyez du texte, des images (jusqu'à 6), de la vidéo (jusqu'à 120 secondes) ou de l'audio (jusqu'à 80 secondes), et il vous renvoie un vecteur dans le même espace. Le modèle gère plus de 100 langues et prend en charge jusqu'à 8 192 tokens en entrée pour le texte.

Côté technique, le modèle utilise le Matryoshka Representation Learning, ce qui permet de choisir la taille des embeddings entre 128 et 3 072 dimensions. Google recommande 768 dimensions pour un bon compromis entre qualité et stockage, ce qui divise par quatre l'espace disque par rapport à la taille maximale.

Les tarifs et la concurrence

Le texte est facturé 0,20 dollar par million de tokens, avec un mode batch à moitié prix. Les images montent à 0,45 dollar, l'audio à 6,50 dollars et la vidéo à 12 dollars par million de tokens. Un palier gratuit est disponible pour tester.

Côté performances, Google affiche de bons scores sur les benchmarks MTEB : 69,9 en multilingue et 84,0 en code. Mais pour du texte seul, OpenAI reste bien moins cher avec son text-embedding-3-small à 0,02 dollar par million de tokens, soit dix fois moins.

Le modèle est disponible via l'API Gemini et Vertex AI, et compatible avec LangChain, LlamaIndex, Weaviate ou ChromaDB.

Le vrai argument de Google ici, c'est le multimodal. Si vous avez besoin d'indexer des catalogues produits avec photos et descriptions dans le même vecteur, ou de faire de la recherche dans des archives vidéo, il n'y a pas d'équivalent chez OpenAI pour le moment.

Mais pour du texte pur, la différence de prix est quand même importante. On attend de voir comment ça se comporte en production, et si les scores MTEB se confirment sur des cas d'usage réels.

Source : Blog Google

❌