Vue lecture

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

Conductor - Lancez des agents IA en parallèle sur votre code

Conductor c'est une app macOS qui vous permet de lancer plusieurs agents Claude Code ou Codex en parallèle, chacun dans son propre worktree git histoire qu'ils ne se marchent pas dessus. Le tout est développé par Melty Labs, et c'est gratuit !! (enfin l'app en elle-même, parce que les tokens Claude ou OpenAI, c'est vous qui casquez hein ^^).

Vous ouvrez l'app, Cmd+N pour créer un workspace, et ensuite, chaque agent bosse dans son coin sur sa propre branche git comme ça y'a pas de conflits ni de merge foireux au milieu du boulot ! Et grâce à cet outil, vous voyez d'un coup d'oeil ce que chacun fabrique via le diff viewer intégré. Ensuite, vous reviewez, et quand c'est bon vous mergez. Comme un chef de chantier en fait, sauf que vos ouvriers ce sont des LLM.

Y'a plus qu'à vous acheter un casque !

Côté modèles, ça supporte Claude Code (avec votre clé API ou votre abonnement Pro/Max) et Codex d'OpenAI. Et la dernière release a d'ailleurs ajouté GPT-5.4 tout frais démoulé.

Le truc cool c'est surtout cette isolation par git worktrees. Chaque workspace étant un worktree séparé, les agents peuvent ainsi modifier des fichiers en parallèle sans se marcher dessus. Si vous avez déjà essayé de faire tourner deux sessions de vibe coding en même temps sur le même repo... vous savez que ça finit en général en carnage.

Attention quand même, chaque worktree bouffe de l'espace disque (genre un repo de 2 Go × 5 agents, ça peut piquer...) donc pensez-y si votre repo est un peu lourd.

L'app intègre aussi le MCP (Model Context Protocol) pour brancher des outils externes, des slash commands custom, et un système de checkpoints qui permet de revenir en arrière tour par tour si un agent part en vrille (genre il supprime un fichier critique... ça arrive). Perso, le diff viewer c'est pas mal du tout car ça évite de jongler entre le terminal et VS Code.

Après dommage que ce soit pour macOS seulement. Déso hein ^^

En tout cas, vu le rythme des mises à jour, c'est un projet qui avance vite. Des devs de chez Linear, Vercel, Notion ou Stripe l'utilisent déjà, et ça a l'air suffisamment solide pour de la prod (mais testez bien avant hein, faut jamais me faire confiance ^^).

Dotenv Mask Editor - Fini les clés API à l'air libre

Et si vos fichiers .env se transformaient en un joli tableau avec des astérisques partout afin d'assurer la confidentialité de vos clés API et autres crédentials ? Hé bien c'est exactement ce que propose Dotenv Mask Editor , une extension VS Code qui remplace carrément l'éditeur texte par une grille.

Du coup, vos clés API, tokens AWS, mots de passe PostgreSQL et autres STRIPE_SECRET_KEY s'affichent sous forme de ****** et vous pouvez bosser dessus même si quelqu'un mate par-dessus votre épaule.

En gros, dès que vous ouvrez un fichier .env (ou .env.local, .env.production... bref, tout ce qui matche le pattern), l'extension vous présente vos variables dans un tableau à deux colonnes. Les clés à gauche, les valeurs masquées à droite. Pour modifier une valeur, hop, vous cliquez dessus et elle se dévoile le temps de l'édition. Vous cliquez ailleurs, c'est re-masqué. Pas de sauvegarde manuelle à faire, ça se fait tout seul.

Le masquage se déclenche à partir de 6 caractères (en dessous, c'est probablement pas un secret... genre PORT=3000 ou DEBUG=true, on s'en fiche). Et le truc cool, c'est que tout tourne en local sur votre machine.

Si vous vous dites "mais attends, y'a pas déjà Camouflage pour ça ?"... oui et non. Camouflage masque vos secrets avec un overlay pendant les démos et le partage d'écran, mais vous continuez à éditer dans l'éditeur texte classique. Dotenv Mask Editor, lui, change complètement l'interface, c'est un éditeur de tableau dédié aux variables d'environnement. Deux approches différentes du coup, et rien ne vous empêche d'utiliser les deux.

L'extension est sous licence MIT, fonctionne sur toutes les plateformes (Windows, Linux, macOS, même VS Code Web) et vous pouvez ajouter des patterns de fichiers personnalisés dans vos settings.json.

D'ailleurs, si vous voulez l'installer, c'est du classique : Ctrl+Shift+X dans VS Code (Cmd+Shift+X sur Mac), vous tapez "dotenv mask" et voilà.

Avec ça, vos secrets restent secrets mais faut quand même pas oublier de mettre votre .env dans le .gitignore hein. ^^

VidBee - yt-dlp en version graphique avec RSS auto

yt-dlp, tout le monde connaît. C'est l'outil parfait pour télécharger des vidéos depuis à peu près n'importe quel site. Sauf que bon, la ligne de commande, c'est pas le truc de tout le monde. Du coup, les interfaces graphiques pour habiller tout ça, y'en a un paquet... mais trouver celle qui est jolie ET sous licence libre, c'est pas gagné.

Heureusement, VidBee est un nouveau venu qui coche pas mal de cases. L'appli tourne sur Windows, macOS et Linux, elle est sous licence MIT, et l'interface est plutôt clean. On colle une URL, on choisit le format MP4 ou MKV, on sélectionne la qualité entre 720p et 8K et hop, ça télécharge.

Fastoche !

Interface principale de VidBee

Bon, jusque-là, vous allez me dire que Stacher7 fait déjà ça. Sauf que VidBee a un petit truc en plus qui vaut le détour : un système de flux RSS intégré. En gros, vous vous abonnez à vos chaînes YouTube préférées via RSS, et l'outil télécharge automatiquement les nouvelles vidéos en arrière-plan. Comme ça, y'a plus besoin de vérifier manuellement si votre créateur favori a sorti un truc. Attention par contre, prévoyez du stockage parce que ça peut vite remplir un disque dur si vous suivez plusieurs chaînes...

Côté technique, ça gère les résolutions jusqu'à la 8K (si votre écran suit), l'extraction audio seule en MP3, les sous-titres dans plus de 50 langues au format SRT, et même le téléchargement de playlists entières ou de contenus privés si vous êtes connecté à votre compte. Y'a aussi un support proxy pour contourner les restrictions géographiques (genre si votre FAI bloque certains sites) et une extension navigateur pour lancer les téléchargements en un clic.

File de téléchargement VidBee

Et pour les plus bidouilleurs d'entre vous, VidBee propose carrément un mode serveur avec une API Fastify et une interface web, le tout déployable en Docker. Perso, c'est ça que je trouve le plus malin. Un docker compose up -d, l'API écoute sur le port 3100, l'interface web sur le 3000, et vous avez votre propre service de téléchargement accessible depuis n'importe quel appareil du réseau local. Attention quand même à pas le rendre accessible publiquement non plus, hein... sauf si vous voulez des ennuis ^^.

Le projet est plutôt actif, codé en TypeScript et basé sur Electron pour le desktop. D'ailleurs, le monorepo inclut aussi une extension navigateur et un site de doc complet. Par contre, c'est encore en développement très actif, du coup y'a forcément des bugs qui traînent par-ci par-là et des trucs qui cassent de temps en temps mais vu la qualité du service rendu, c'est pas bien grave !

Bref, c'est gratuit, c'est open source, et ça marche sur Windows, macOS et Linux. Allez voir !

Merci à Lorenper pour le partage !

try - Fini les dossiers test-final-v3 qui traînent partout !

Vous avez combien de dossiers test sur votre machine ? Dix ? Cinquante ? Deux cents ? Tobi Lütke, le mec qui a cofondé Shopify, avait le même problème... Alors il a pondu try , un petit script Ruby qui donne un vrai foyer chaleureux à vos expérimentations de dev déjanté.

Le principe est hyper simple. Vous tapez try redis dans votre terminal, et magie magie, soit ça vous envoie direct dans votre dossier d'expérimentation Redis existant, soit ça vous propose d'en créer un nouveau avec la date du jour en préfixe, genre 2025-08-17-redis-experiment. En fait c'est con, mais rien que le préfixe de date, ça change tout... car 3 semaines plus tard, quand vous cherchez ce bout de code pondu à 2h du mat en rentrant de soirée, hé bien vous le retrouvez !

La recherche fuzzy fait le boulot, comme ça par exemple vous tapez pgres, ça matche postgres-local. Vous tapez connpool, ça retrouve connection-pool. Et ce sont les résultats les plus récents qui remontent en premier, parce que bon, ce que vous avez touché hier est souvent plus pertinent que le truc d'il y a 6 mois. Et y'a même un petit score de pertinence affiché à côté de chaque résultat !

Côté installation, un gem install try-cli suivi d'un eval "$(try init)" dans votre .zshrc, et c'est terminé. Ça marche aussi avec Fish et via Homebrew pour ceux qui préfèrent. D'ailleurs, le cœur du truc tient dans un seul fichier Ruby, par contre, faut Ruby 3.0 minimum (le Ruby livré avec macOS est trop vieux, donc un petit brew install ruby avant si besoin).

Y'a aussi quelques bonus plutôt pas mal. Par exemple la commande try . (si vous êtes dans un repo Git) crée un worktree du repo courant dans votre dossier d'expérimentations, ce qui est super pratique pour tester un truc sans polluer votre branche principale. Et try clone URL_GITHUB clone un repo direct dans un dossier daté, genre 2025-08-17-nom-du-repo. Si vous aimez les outils jetables bien rangés , c'est exactement le délire.

Bon, vous pourriez faire un alias bash à la place, mais finalement la recherche fuzzy et le classement par date, c'est quand même autre chose qu'un bête mkdir. Tous vos dossiers vivent dans ~/src/tries par défaut (changeable via TRY_PATH), avec une petite interface en mode texte qui affiche le temps écoulé depuis votre dernier passage. Le README dit que c'est pensé pour les cerveaux qui papillonnent... et franchement, si vous êtes comme moi, du genre à avoir 15 projets en cours, c'est pile le délire qui va vous sauver !! Si vous passez votre vie dans le terminal , c'est un de ces projets qu'on installe et qu'on n'oublie plus.

Attention quand même, le projet est encore jeune et quelques bugs trainent côté Homebrew et avec Ruby 4.0.

Amusez-vous bien !

PinMe - Le web immuable en une commande

Les 404, c'est la plaie du web... J'en sais quelque chose, je fais la chasse à ça en permanence sur mon propre site. C'est vrai que c'est relou parce que vous bookmarkez un projet cool, vous y retournez trois mois après... et pouf, ça a disparu. Le dev n'a pas renouvelé son nom de domaine, l'hébergeur a fermé boutique, le contenu s'est évaporé ou que sais-je encore... En fait, sur le web, RIEN n'est permanent.

PinMe prend le problème à l'envers en collant vos fichiers directement sur IPFS . En gros, au lieu de dépendre d'un serveur unique qui peut tomber n'importe quand, vos pages sont distribuées sur un réseau décentralisé et identifiées par un hash CID unique. Du coup, tant que le réseau tourne, votre contenu existe. Pas besoin de renouveler quoi que ce soit, pas besoin de payer un hébergeur... ça fonctionne tout seul.

L'installation se fait en une ligne :

npm install -g pinme

Pour déployer votre site statique, c'est hyper simple :

pinme upload dist/

L'outil détecte le dossier de build, ou plutôt il le devine tout seul selon votre framework : dist/ pour Vite et Vue, build/ pour Create React App, out/ pour Next.js en export statique. Ça évite d'avoir à se palucher de la config.

Côté limites, on est sur 200 Mo par fichier et 1 Go au total ce qui est largement suffisant pour une landing page ou une démo ! Et c'est GRATUIT. Pour ceux qui veulent un domaine lisible plutôt qu'un hash cryptique, y'a aussi des domaines ENS (les .eth sur Ethereum) ou des sous-domaines en .pinit.eth.limo. Après pour les domaines custom faudra un compte VIP par contre.

Le truc sympa c'est que vos fichiers restent accessibles via n'importe quelle passerelle IPFS, genre dweb.link ou w3s.link. Ainsi, si votre hébergeur ferme ou que votre domaine expire comme je le disais en intro, on s'en fiche ! Le contenu est toujours là, épinglé quelque part sur le réseau. C'est du stockage immuable, basé sur le contenu lui-même... du coup personne ne peut modifier ou supprimer ce que vous avez publié. (Et en fait vous non plus, faut le savoir.)

Et y'a aussi des commandes pour exporter en fichiers CAR et réimporter ailleurs, ce qui est pratique pour archiver ou migrer entre passerelles.

Voilà c'est gratuit pour 1 Go de stockage, c'est open source (licence MIT) et c'est par là . Merci à Lorenper pour la découverte !

Snitch - Le netstat qui ne pique plus les yeux

Si vous avez déjà tapé [ss -tulnp](https://www.it-connect.fr/lister-les-ports-en-ecoute-sous-linux-avec-lsof-netstat-et-ss/) dans un terminal, vous savez que c'est moche. Genre, VRAIMENT moche. Les colonnes qui se chevauchent, les adresses tronquées, bref c'est un festival du bordel. Mais c'était sans compter sur ce dev qui a pondu Snitch , un outil en Go sous licence MIT qui vient concurrencer ss et netstat... sauf que pour une fois, c'est lisible, regardez :

L'interface de Snitch en action, sobre et lisible

En gros, c'est un ss moderne avec une interface TUI interactive. Vous lancez la commande dans votre terminal et tadaaa, vous avez un tableau propre avec toutes vos connexions réseau, les processus associés, les ports, les protocoles... le tout avec des couleurs et une navigation au clavier. Rien à voir donc avec le pavé monochrome habituel !

Le truc cool aussi ce sont les filtres. Vous pouvez taper snitch ls proto=tcp state=listen pour ne voir que les sockets TCP en écoute, ou snitch ls proc=nginx pour traquer votre serveur web. Y'a même un filtre contains= pour chercher dans les adresses... genre contains=google pour voir tout ce qui cause avec Mountain View.

D'ailleurs, côté commandes c'est en fait bien fichu. snitch ls pour un tableau statique, snitch json pour du JSON brut si vous voulez scripter, et snitch watch -i 1s pour streamer les connexions en temps réel. Du coup ça s'intègre nickel dans vos pipelines.

La TUI elle-même vaut le détour. Vous naviguez avec j/k (comme dans Vim, forcément), vous basculez TCP/UDP avec t/u, et le plus jouissif... vous pouvez killer un processus directement avec la touche K. Plus besoin de noter le PID et d'ouvrir un autre terminal ! Sauf que attention, sur Linux faut quand même lancer en root pour avoir les infos complètes sur les processus, parce que l'outil va lire dans /proc/net/*. Ça ne marche pas non plus sur Windows, c'est Linux et macOS uniquement.

Pour ceux qui aiment personnaliser leur terminal (oui, je vous connaîs...), y'a une quinzaine de thèmes, Catppuccin, Dracula, Nord, Tokyo Night, Gruvbox... la config se fait dans ~/.config/snitch/snitch.toml et l'outil peut aussi conserver vos préférences de filtres entre les sessions (faut activer remember_state dans la config).

Côté installation, c'est pas la mer à boire. brew install snitch sur macOS, go install github.com/karol-broda/snitch@latest si vous avez Go, yay -S snitch-bin sur Arch, et y'a même des images Docker pour les plus prudents !

Donc si vous êtes du genre à surveiller votre trafic réseau ou à garder un oeil sur vos outils de diagnostic Linux , c'est clairement à tester.

Perso, pour du debug réseau rapide, je trouve que c'est carrément plus agréable que de se taper un ss -tulnp.

notion-cli - Pilotez Notion depuis votre terminal

Si vous utilisez Notion au quotidien et que vous avez toujours rêvé de piloter vos bases de données depuis un terminal... y'a enfin un truc qui tient la route.

Ça s'appelle notion-cli , c'est un binaire Go qui embarque 39 commandes couvrant TOUTE l'API Notion. Il s'agit d'un seul exécutable pour macOS, Linux et Windows (amd64 et arm64) sans dépendance qui vous permet de gérer pages, bases de données, blocs et commentaires sans jamais ouvrir un navigateur.

L'installation, c'est du classique : brew install 4ier/tap/notion-cli sur macOS, go install pour les puristes, npm install -g notion-cli-go ou même Docker. Il faut juste un token d'intégration Notion (le ntn_xxxxx que vous générez sur notion.so/my-integrations), vous le collez dans ~/.config/notion-cli/config.json ou en variable NOTION_TOKEN, et c'est parti.

notion-cli en action dans le terminal

Le truc cool, ce sont les filtres humain-friendly. Au lieu de se taper du JSON pour filtrer une base, vous écrivez Status=Done et l'outil se débrouille tout seul. En fait, il détecte le type de chaque propriété (texte, date, sélection...) et adapte le filtre automatiquement. C'est carrément pas mal, je trouve.

Et côté Markdown, c'est la fête ! Vous exportez une page entière avec notion block list <page-id> --md --depth 3, et inversement, vous injectez un fichier .md dans Notion via notion block append <page-id> --file notes.md. Pour ceux qui bossent avec de la doc technique, ça simplifie sérieusement les choses. Bon, ça ne marche pas avec les blocs synchronisés ou les embeds exotiques, mais pour le reste c'est nickel.

D'ailleurs le mode "pipé" est vraiment malin. Car dans le terminal, l'outil affiche de jolies tables colorées mais dès que vous le "pipez" vers jq ou un script, il bascule en JSON automatiquement. Du coup, intégrer ça dans un pipeline shell ou un cron... c'est aucun parsing à faire. Voilà quoi.

Après des CLI pour Notion, y'en a déjà quelques-uns. Sauf que la plupart sont soit limités aux tâches (comme notion-cli-go qui gère surtout le côté todo), soit cantonnés à l'export (et souvent liés à un OS ou un langage précis).

Celui de 4ier, c'est donc le premier à couvrir l'API en entier : pages, bases, blocs, commentaires, fichiers, utilisateurs, et même un accès REST brut via notion api GET /v1/endpoint. En gros, c'est le gh de GitHub, mais pour Notion (et pour une fois, c'est pas juste du blabla marketing ^^).

Les cas d'usage qui tuent c'est par exemple un script cron qui crée une entrée hebdo avec notion page create <db-id> --db "Name=Weekly" "Status=Todo". Un backup qui exporte vos pages critiques en Markdown toutes les nuits. Ou un CI/CD qui met à jour un changelog Notion à chaque deploy. Quelques lignes de bash et c'est réglé, car l'outil gère tout le reste ! C'est hyper rare un CLI qui couvre autant de terrain.

Y'a aussi le côté agent-friendly pour ceux qui kiffent l'IA. L'outil retourne des codes de sortie propres, du JSON exploitable, et s'installe comme skill agent via npx skills add 4ier/notion-cli. Dans la lignée de Gemini CLI , on voit de plus en plus d'outils pensés terminal-first... et je trouve que c'est carrément bien.

Après comme souvent quand je vous présente des outils, le projet est tout frais (v0.3.0, licence MIT), avec une petite communauté donc attention, car comme tout ce qui dépend d'une API tierce, si Notion bouge ses endpoints... voilà quoi. Mais c'est propre, c'est testé, et ça tourne déjà très bien.

Votre navigateur va pouvoir souffler un peu.

OpenVAS - Le scanner de vulnérabilités open source qui vous dit la vérité sur votre serveur

Vous avez un serveur, un NAS, quelques services qui tournent chez vous ou au boulot, et vous vous demandez si tout ça est bien sécurisé ? Alors plutôt que d'attendre qu'un petit malin vous le fasse savoir de manière désagréable, autant prendre les devants avec un scanner de vulnérabilités.

Attention : si vous scannez le réseau de votre boulot, demandez toujours une autorisation écrite avant car scanner sans permission, c'est illégal et ça peut vous coûter cher. Et ne comptez pas sur moi pour vous apporter des oranges en prison.

OpenVAS (Open Vulnerability Assessment Scanner), c'est l'un des scanners open source les plus connus, maintenu par Greenbone. Une fois en place sur votre réseau, il scanne vos services exposés et vous balance un rapport avec ce qui craint : Ports ouverts, services mal configurés, failles connues, certificats expirés... De quoi repérer une bonne partie de ce qu'un attaquant pourrait exploiter.

L'interface principale d'OpenVAS

Ce qui est cool, c'est que vous restez en mode défensif. C'est pas un outil de pentest offensif ou de hacking pur et dur mais juste un audit de votre propre infra pour savoir où vous en êtes. Et ça tourne avec un feed de vulnérabilités (le Greenbone Community Feed) qui est régulièrement mis à jour, ce qui permet de détecter les failles récentes.

Pour l'installer, une des méthodes c'est de passer par Docker. Greenbone fournit une stack complète avec docker-compose. Après vous cherchez plutôt à analyser spécifiquement vos images de conteneurs, Grype pourrait aussi vous intéresser .

Pour OpenVAS, vous créez un répertoire, vous téléchargez leur fichier de config (jetez toujours un œil dedans avant de l'exécuter, c'est une bonne pratique), et hop :

mkdir -p ~/greenbone-community-container
cd ~/greenbone-community-container
curl -f -O -L https://greenbone.github.io/docs/latest/_static/docker-compose.yml
docker compose pull
docker compose up -d

L'assistant de configuration initiale

Après ça, vous accédez à l'interface web via http://localhost:9392.

Et pour le login, attention, car sur les versions récentes du conteneur communautaire, le mot de passe admin est généré aléatoirement au premier démarrage. Il faut donc aller voir les logs pour le récupérer (docker compose logs -f). Si ça ne marche pas, tentez le classique admin/admin, mais changez-le direct.

La première synchro des feeds peut prendre un moment, le temps que la base de vulnérabilités se télécharge. Vous avez le temps d'aller vous faire un café, c'est pas instantané.

Niveau config machine, la documentation recommande au moins 2 CPU et 4 Go de RAM pour que ça tourne, mais pour scanner un réseau un peu costaud, doublez ça (4 CPU / 8 Go) pour être à l'aise. Et une fois connecté, direction la section scans pour créer une cible avec votre IP ou plage d'adresses. Ensuite vous pouvez lancer un scan avec le profil de votre choix :

Le mode "Discovery" se contente de lister les services et ports ouverts tandis que le mode "Full and Fast" lance une batterie complète de tests de vulnérabilités. Il est conçu pour être "safe" (ne pas planter les services), mais le risque zéro n'existe pas en réseau donc évitez de scanner votre prod en pleine journée sans prévenir.

Les résultats arrivent sous forme de rapport avec un score de criticité comme ça vous avez le détail de ce qui pose problème et souvent des pistes pour corriger. Genre si vous avez un service SSH avec une config un peu lâche ou un serveur web trop bavard, le rapport vous le dira.

Par contre, c'est vrai que l'interface est assez austère comparée à des solutions commerciales comme Nessus mais c'est gratuit, c'est open source, et ça fait le taf pour un audit interne. La version Community a quand même quelques limitations (feed communautaire vs feed entreprise, support, etc.), mais pour surveiller son infra perso ou sa PME, c'est déjà très puissant.

Du coup, si vous voulez savoir ce qui traîne sur votre réseau avant que quelqu'un d'autre le découvre, OpenVAS est un excellent point de départ. Et c'est toujours mieux de découvrir ses failles soi-même que de les lire dans un mail de rançon... enfin, je pense ^^.

A découvrir ici !

GitForms - Vos formulaires de contact stockés directement dans GitHub Issues

Intégrer un formulaire de contact sur un petit projet ou un MVP, c'est souvent la plaie. Soit on s'embête avec un backend dédié, soit on finit par payer un abonnement chez Typeform ou FormSpree parce qu'on a dépassé le quota gratuit en trois jours.

Et c'est LÀ qu'intervient GitForms .

Le concept est tout bête mais fallait y penser. En fait l'idée c'est d'utiliser les GitHub Issues comme base de données pour vos formulaires comme ça, au lieu de stocker les messages dans une DB SQL ou NoSQL obscure, chaque soumission de formulaire crée automatiquement une nouvelle issue dans le dépôt GitHub de votre choix.

Pratique, non ?

Côté technique, c'est du solide puisqu'on est sur du Next.js 14, du TypeScript et du Tailwind CSS. Et pour le mettre en place, c'est vraiment l'affaire de 5 minutes... vous clonez le repo, vous générez un token GitHub, et vous déployez ça sur Vercel, Netlify ou même via Docker. Et hop, vous avez un formulaire fonctionnel avec des notifications par email automatiques (merci le système de notifs de GitHub).

L'outil est super personnalisable, vous pouvez changer les couleurs, les textes et même ajouter des langues en bidouillant simplement des fichiers JSON, sans même avoir à toucher au code source. C'est idéal pour ceux qui veulent un truc propre et rapide sans sortir la carte bleue toutes les cinq minutes.

Attention quand même, car niveau RGPD, ne croyez pas que c'est magique. Certes, c'est auto-hébergeable, mais vos données transitent par GitHub. Il faudra donc veiller à ce que votre dépôt soit privé si vous collectez des données personnelles, histoire de ne pas afficher les emails de vos prospects à la vue de tous. Notez aussi que GitHub a des limites de taux (rate limits) pour la création d'issues, donc si vous recevez 10 000 messages par jour, ça risque de coincer.

Enfin, un petit mot sur la licence, le projet semble être sous CC BY-NC-SA 4.0 ce qui veut dire qu'il est parfait pour vos projets perso ou vos tests, mais pour un usage purement commercial, il faudra peut-être vérifier si ça colle avec vos besoins.

Bref, si vous cherchez une solution simple, propre et qui exploite intelligemment les outils que vous utilisez déjà, jetez un œil à GitForms. C'est open source et ça dépanne bien pour les petits projets qui n'ont pas besoin d'une artillerie lourde.

Source

Vos données sont déjà en vente… et vous ne vous en rendez même pas compte

-- Article en partenariat avec Incogni --

Les data brokers, ces intermédiaires invisibles du Web, ont transformé votre vie numérique en produit de consommation courante. Ils collectent, recoupent et monétisent des milliers de détails sur vous : adresse précise, numéros de téléphone, emails secondaires, habitudes d'achat, revenus estimés, présence sur les réseaux, même des inférences sur votre santé ou vos orientations politiques ou sexuelles. Incogni s'attaque à ce rouleau compresseur en demandant, à votre place et en continu, la suppression de ces informations chez plus de 420 courtiers, pour que votre profil cesse enfin d'être un actif coté en bourse.

Le Web aspire vos infos plus vite que vous ne pouvez cliquer sur « refuser »

On pense souvent que les fuites viennent de gros hacks spectaculaires ou sont offertes par nos sites gouvernementaux. Mais la réalité est bien plus banale et implacable. Chaque inscription à un service, chaque programme de fidélité, chaque appli « pratique », chaque extension Chrome boostée à l'IA devient une porte ouverte. Une étude récente d'Incogni sur 442 extensions Chrome alimentées par l'IA montre que 67% d'entre elles collectent des données utilisateur, 41% raflent des infos personnelles identifiables (mots de passe, historique, localisation, communications privées), et un tiers ont un impact de risque élevé en cas de compromission. Des outils comme Grammarly, DeepL ou QuillBot, avec des millions d'utilisateurs, demandent des permissions massives pour injecter du code partout et aspirer votre activité. Tout ça au nom de la « productivité ».

Ces données ne restent pas dans un coffre : elles se déversent chez les brokers, qui les raffinent et les revendent. Résultat : votre adresse exacte apparaît sur des sites de recherche de personnes, votre profil d'achat sert à des pubs invasives ou à des hausses de prix ciblées, et des escrocs utilisent ces détails pour monter des phishings crédibles. Sans intervention, votre empreinte s'alourdit d'année en année, rendant les scams plus efficaces et les usurpations d'identité plus simples à exécuter.

Incogni : l'agent qui harcèle les brokers à votre place

Plutôt que de vous laisser batailler avec des formulaires opt-out incompréhensibles et des réponses en 45 jours maximum (comme l'exige le RGPD), Incogni prend le relais dès l'inscription. Le service scanne les brokers susceptibles de détenir vos infos, envoie des demandes légales de suppression, et relance tous les 60 à 90 jours ceux qui traînent ou rechignent. Un audit Deloitte confirme que cela couvre bien 420+ brokers, avec des relances systématiques et des confirmations de suppression obtenues dans la grande majorité des cas.

Le tableau de bord de l'outil est limpide : gravité de l'exposition par broker, statut des requêtes (confirmée, en attente, refus), et même des suppressions personnalisées sur des sites hors liste standard (genre un vieux forum, un annuaire pro, un résultat Google tenace). Et ça va assez vite, avec une baisse notable des spams ciblés dès la première semaine et des fiches publiques qui s'évaporent progressivement. Si un broker ne coopère pas ? Incogni peut escalader vers les autorités de protection des données.

Pourquoi vos données dans de mauvaises mains vous coûtent cher

Avoir ses infos chez les brokers, c'est non seulement envahir sa boîte mail de pubs sur mesure, mais aussi faciliter les scams. Un appel téléphonique cherchant à vous arnaquer, un faux site de livraison avec votre adresse exacte, un mail d'« urgence bancaire » avec vos vrais détails, ou une usurpation qui passe crème parce que le voleur connaît déjà votre contexte. Les rapports sur les fraudes en ligne montrent que ces attaques exploitent précisément ces données achetées à bas prix.

Incogni brise ce cycle en rendant votre profil moins attractif : moins de détails disponibles, moins de valeur marchande, moins de copies circulant. Les retours d'utilisateurs confirment une réduction des recherches de personnes qui vous listent, des démarchages ciblés qui s'estompent, et une sérénité accrue face aux fuites futures. Le service gère aussi les relances pour que les suppressions tiennent dans le temps, transformant une corvée ponctuelle en maintenance automatique.

Prendre le contrôle : une démarche qui paye sur la durée

Le vrai pouvoir d'Incogni réside dans sa persistance. Contrairement à un ménage manuel qui s'essouffle vite, il continue d'envoyer des demandes, suit les réponses, et ajoute de nouveaux brokers au fil des mises à jour (des dizaines par an). Basé aux Pays-Bas, il respecte scrupuleusement le RGPD et d'autres régimes comme le CCPA, avec une procuration numérique qui vous décharge légalement de tout le process. Son efficacité pour les particuliers comme les pros qui veulent limiter les risques sur des listes clients ou employés n'est pas prise en défaut.

Vos données ne sont pas condamnées à rester en vente éternellement. Des lois vous donnent le droit à l'effacement, et Incogni est l'outil qui passe ses journées à l'exercer pour vous. En 2026, alors que les extensions IA et les brokers s'enhardissent, commencer par nettoyer ce qui traîne est le geste le plus concret pour reprendre les rênes. Moins de données en circulation, c'est moins de spam, moins de scams crédibles, et surtout la fin de cette sensation diffuse d'être constamment observé par des inconnus qui en savent trop long.

Au niveau du prix, ça reste constant. Vous pouvez toujours vous protéger à partir de 77,63€ TTC par année, soit -55% avec le code KORBEN55.

-> Cliquez ici pour reprendre vos données en main ! <-

Xcode 26.3 - Les agents IA Anthropic et OpenAI débarquent enfin !

Apple vient de lâcher une bombe pour tous les développeurs pommés de leur écosystème. Si vous pensiez que l'IA dans l'IDE se limitait à de l'autocomplétion un peu boostée, accrochez-vous parce que la version 26.3 de Xcode arrive (enfin, sa Release Candidate pour l'instant) et elle apporte avec elle le "codage agentique". Aaah je l'attendais depuis looongtemps !

Concrètement, ça veut dire qu'au lieu d'avoir un simple assistant qui vous suggère la fin de votre boucle "for", vous avez maintenant de véritables agents capables de prendre des initiatives. Donc intégration directe de Claude (Anthropic) et de Codex (OpenAI). Apple qui ouvre les vannes et vous laisse choisir votre moteur préféré parmi ces deux-là au lancement, c'est fou !

Le délire est assez poussé puisque ces agents ne se contentent pas d'écrire du code dans un coin. Ils ont accès à la structure complète de votre projet, à la doc officielle d'Apple (histoire de privilégier les dernières APIs) et peuvent même lancer des builds ou des tests pour vérifier que leur tambouille fonctionne. Si ça plante, ils analysent l'erreur et tentent de corriger le tir tout seuls. C'est un peu comme ce qu'on retrouve déjà dans Cursor et Windsurf.

Perso, ce qui me botte le plus, c'est l'utilisation du Model Context Protocol (MCP) parce que je me sers tout le temps de ça. Pour ceux qui ne suivent pas, c'est un protocole ouvert qui permet d'interfacer Xcode avec des agents compatibles.

Et côté interface, c'est plutôt propre. Y'a un petit panneau à gauche pour donner vos ordres en langage naturel ("Ajoute-moi une vue SwiftUI pour gérer le profil utilisateur avec une image ronde et un dégradé"), et tadaaa, l'agent découpe la tâche en petites étapes. On voit le code changer en temps réel, avec des surbrillances pour ne pas être perdu. D'ailleurs, si le résultat est foireux (ça arrive, hein), Xcode crée des "milestones" à chaque modification effectuée par l'agent pour revenir en arrière en un clic. Pas de panique donc.

Si vous voulez mettre les mains dedans tout de suite, la Release Candidate est dispo depuis ce 3 février sur le site développeur d'Apple. Attention quand même aux prérequis puisque même si Xcode 26.3 tourne sur macOS Sequoia 15.6+, pour profiter des fonctions d'intelligence (l'agentic coding, quoi), il vous faudra impérativement un Mac avec une puce Apple Silicon sous macOS Tahoe.

Et pour ceux qui veulent vraiment monter en compétence, Apple organise un atelier "code-along" ce jeudi 5 février sur son site développeur. C'est l'occasion de voir comment dompter ces agents sans qu'ils ne transforment votre projet en plat de spaghettis.

Bref, le métier de dev est en train de muter sévère et ce nouvel Xcode 26.3 pose une sacrée brique.

A vous de jouer maintenant !

Source

Sklad – Vos snippets chiffrés sous la main

Si vous êtes du genre détendu, vous avez forcément un fichier texte quelque part dans votre ordi avec des bouts de code, des clés API, des mots de passe... le tout en clair dans un fichier avec un nom équivoque genre passwords.txt posé OKLM dans ~/Desktop/.

Alors bien sûr, on est nombreux à utiliser un gestionnaire de mots de passe classique pour éviter ça, mais en fait le souci c'est pas les mots de passe. C'est tous ces petits snippets qu'on copie-colle 15 fois par jour... des commandes Docker, des tokens temporaires, des regex que j'oublie à chaque fois. Bref, il nous manque un bidule entre le presse-papier et le coffre-fort.

Et c'est exactement ce que fait Sklad !! Cet outil est un gestionnaire de snippets chiffrés qui vit dans votre barre de tâches et auquel vous balancez tout ce que vous copiez-collez régulièrement. Ensuite, vous organisez ça dans des dossiers, et hop, un clic gauche sur l'icône de la barre de menu et ça copie directement le dernier snippet utilisé. C'est carrément mieux qu'un clipboard manager classique type CopyQ parce qu'il y a du chiffrement AES-256 avec dérivation Argon2, ce qui est plutôt rassurant pour stocker du token.

Du coup, tout reste en local sur votre machine et le fichier de données atterrit dans ~/Library/Application Support/sklad/ sur macOS (ou l'équivalent AppData sur Windows). Ainsi, en cas de vol de ce fichier, le gars qui l'a récupérer devra se débrouiller avec de l'AES-256... bon courage.

Côté raccourcis, y'a Cmd+K (ou Ctrl+K sur Windows/Linux) pour chercher dans vos snippets. Pratique pour retrouver vos commandes kubectl par exemple et si vous avez des snippets avec des caractères spéciaux (genre des backticks dans du code Markdown), j'ai remarqué que le copier-coller peut parfois foirer selon le terminal. iTerm2 s'en sort bien, mais sur le Terminal.app natif j'ai eu des soucis avec les guillemets échappés. Rien de dramatique, mais faut le savoir.

Y'a le thème sombre et le thème clair et l'app est dispo en binaires pré-compilés pour Windows (.msi), macOS (ARM et Intel en .dmg) et Linux (.deb et .AppImage). Notez que comme d'hab, au premier lancement sur macOS, faudra passer par Réglages > Confidentialité pour autoriser l'app... Apple oblige.

Sklad est encore un projet hyper jeune donc ça risque de bouger pas mal et surtout, ça ne remplace pas un KeePass ou un Bitwarden. Pourquoi ? Hé bien parce que c'est pas le même usage. Voyez plutôt Sklad comme votre tiroir à snippets chiffrés qui conviendra pour tout ce qui ne peut pas aller dans votre gestionnaire de mot de passe.

Bref, si ça vous tente, c'est par ici !

Merci à lorenper pour la découverte.

PineTS - Vos scripts TradingView enfin libérés !

Vous connaissez sûrement TradingView pour suivre les cours de la bourse / crypto, et son fameux langage Pine Script. C'est top pour bidouiller des indicateurs techniques sans se prendre la tête, mais dès qu'on veut sortir du bac à sable pour intégrer ça dans un bot perso ou un backend, ça se corse sévère. Alors moi je fais pas tout ça, ni trading, ni dev autour du trading, mais je sais qu'on peut se retrouver souvent bloqué par les limites de la plateforme.

Hé bien bonne nouvelle pour tous les traders en culottes courtes qui n'ont pas encore compris que le DCA c'est + efficace que le day-trading, Alaa-eddine (un lecteur fidèle, coucou !) a bossé sur un projet qui va vous plaire : PineTS .

PineTS ce n'est pas encore l'un de ses parseurs bancal mais un vrai transpiler ET un runtime complet qui permet d'exécuter du code Pine Script directement dans un environnement Javascript ou TypeScript. Il vous faudra évidemment Node.js et votre bon vieux navigateur pour que ça fonctionne.?

Vous prenez votre script ta.rsi(close, 14), vous lancez un npm install pinets et hop, ça tourne sur votre serveur. PineTS gère la "transpilation" (non, c'est pas quand on a chaud sous les bras ^^) à la volée et fournit une implémentation des fonctions standard de Pine Script (v5 et v6). Il supporte déjà plus de 60 indicateurs techniques (SMA, EMA, MACD, Bollinger...), le multi-timeframe et même le streaming de données temps réel.

Du coup, ça ouvre des portes assez dingues ! Et si vous vous demandez si Pine Script est similaire à JavaScript, la réponse est "pas tout à fait", mais PineTS fait le pont entre les deux mondes. Vous pouvez grâce à ça récupérer des données de marché via n'importe quelle API (CCXT, Binance...), les passer à la moulinette PineTS, et utiliser le résultat pour trigger des ordres ou nourrir une IA.

Attention par contre, tout n'est pas encore supporté à 100%. Sauf si vous restez sur du standard, là c'est royal... Mais si vous utilisez des fonctions graphiques très exotiques, faudra vérifier tout pour ne pas finir sur la paille. Le seul truc qui manque peut-être, c'est une compatibilité totale avec les scripts v4, mais bon, on est en v6 maintenant et pour la logique de trading pure, c'est propre.

D'ailleurs, pour ceux qui utilisent ChatGPT pour écrire du Pine Script, sachez que vous pouvez maintenant intégrer ces snippets générés par l'IA directement dans vos propres applis Node.js. C'est quand même plus flexible que de copier-coller ça dans TradingView à chaque fois.

Et ce n'est pas tout (hé oui ^^) car pour la partie visuelle, il a aussi sorti également QFChart , une bibliothèque dédiée pour afficher le tout avec de jolis graphiques financiers. C'est le combo gagnant pour se faire un dashboard de trading sur mesure sans dépendre de l'infra de TradingView.

Perso, je trouve ça génial pour ceux qui veulent garder la main sur leur exécution ou faire du backtesting sérieux avec leurs propres données. En fait, c'est exactement ce qu'il manquait aux traders-developpeurs pour coder leur propre logique de A à Z. Le projet est open source et dispo sur GitHub et y'a même un playground pour tester vos scripts en live et voir la transpilation en temps réel.

Si vous faites du trading algo, ça vaut clairement le coup d'œil.

PineTS est à découvrir ici ! Et un grand merci à Alaa-eddine pour le partage !

UxNote - Annotez vos maquettes web sans prise de tête

Il y a quelques jours, un lecteur (merci Benjamin !) m'a envoyé un outil qu'il a bricolé lui-même avec Codex d'OpenAI et ça touche une petite corde sensible chez moi, d'où le fait que je vous en parle.

C'est pas souvent que je bosse avec des clients sur autre chose que des articles mais il m'est arrivé par le passé qu'un client m'envoie ses retours par mail, avec des captures d'écran floues, des flèches rouges partout et des commentaires du genre "le truc là, à gauche, je sais pas trop ??".

Alors de mon côté, j'ai testé pas mal de solutions pour évier ça mais j'ai rien trouvé de foufou... Figma par exemple c'est top pour les retours mais faut que le client crée un compte (et ça, c'est jamais gagné), Marker.io c'est bien fichu mais c'est payant. J'avais même essayé Loom à un moment, mais bon, leur demander d'enregistrer leur écran c'était trop compliqué.

Alors que UxNote, lui, règle exactement ce problème sans rien de tout ça !

En fait, ça permet d'intégrer une balise JavaScript dans votre page (juste avant le </body>) et hop, une petite toolbar apparaît.

<script src="https://github.com/ninefortyonestudio/uxnote/releases/download/v1.0.0/uxnote.min-v1.0.0.js"></script>

Votre client peut alors surligner du texte, épingler des éléments avec des badges numérotés, ajouter des commentaires... et surtout, exporter tout ça proprement en JSON ou l'envoyer direct par mail.

Comme ça, fini le chaos habituel des retours clients façon "j'ai annoté le PDF que j'ai imprimé puis scanné". Là, les commentaires sont directement contextualisés sur la page, exactement là où ils doivent être. C'est vrai que des outils d'annotation web existent depuis des lustres, mais UxNote a choisi le stockage 100% local (via le localStorage) plutôt que de monter un backend avec des comptes utilisateurs. Et c'est ce qui fait toute la différence niveau simplicité, avec les autres outils.

Par contre attention, si votre client vide son cache navigateur, il perd ses annotations... Perso je vous recommande donc de faire l'export JSON dès que possible pour éviter les mauvaises surprises.

L'outil propose aussi un mode "assombrissement" qui met en évidence la zone annotée (pratique pour se concentrer), des couleurs personnalisables, et même la possibilité de bloquer certains éléments de l'annotation avec l'attribut data-uxnote-ignore. Ça fonctionne sur les environnements de staging, en local, et même sur les SPA ... sauf si vous avez une CSP ultra stricte, auquel cas faudra autoriser le script et les styles inline dans votre config.

Bref, si vous bossez avec des clients qui ont du mal à exprimer leurs retours autrement qu'en pièces jointes de 15 Mo, UxNote pourrait bien sauver les quelques cheveux qu'il vous reste. Et en plus c'est gratuit, open source et disponible sur GitHub .

Que demande le peuple ???

Merci Benjamin !

Smtp-Tunnel-Proxy - Déguisez votre trafic en simples emails

Ce matin, en trainant sur GitHub (mon sport du dimanche, je sais c'est triste), je suis tombé sur un truc qui m'a intéressé et qui je pense vous sera utile (comme la plupart des trucs que je présente ici) surtout si vous êtes coincé derrière un pare-feu d'entreprise totalement paranoïaque. Ou encore si votre FAI s'amuse à brider certains protocoles. Ça peut arriver dans ces cas là, on se sent un peu comme un rat en cage, à chercher la moindre petite ouverture pour respirer un peu de notre liberté.

Cet outil, ça s'appelle Smtp-Tunnel-Proxy et le concept c'est de faire passer tout votre trafic pour de bêtes emails. Alors vous vous dites peut-être "Mouais, encore un tunnel qui va ramer comme pas possible", mais en creusant un peu, vous allez voir, c'est pas con.

En fait ce que fait ce petit script Python (ou binaire Go) c'est qu'il enveloppe vos paquets TCP dans une connexion qui ressemble à s'y méprendre à du trafic SMTP chiffré. En gros, le truc simule un handshake avec un serveur mail (comme Postfix), lance le chiffrement TLS 1.2+, et hop, une fois le tunnel établi, il balance la purée en binaire sans que le DPI (Deep Packet Inspection) puisse y voir quelque chose. Comme ça le firewall n'y comprend plus rien, le petit chou ^^.

C'est un peu comme un tunnel SSH en fait mais déguisé en serveur mail, ce qui le rend beaucoup plus discret. Parce que là où un tunnel SSH peut être repéré par sa signature un peu trop évidente, une connexion SMTP chiffrée, c'est ce qu'il y a de plus banal sur le net. Du coup, ça passe crèèèème.

Niveau fonctionnalités, x011 (le dev) a fait les choses bien. Le truc est multi-utilisateurs avec des secrets partagés pour l'auth, supporte le multiplexing (plusieurs connexions dans un seul tunnel), et gère même une whitelist d'IP pour éviter que n'importe qui ne squatte votre tunnel. C'est propre quoi.

L'installation côté serveur est simplifiée grâce notamment à un script tout fait que vous pouvez lancer sur n'importe quel petit VPS. Un petit curl et c'est réglé :

curl -sSL https://raw.githubusercontent.com/x011/smtp-tunnel-proxy/main/install.sh | sudo bash

Et côté client, c'est encore plus simple car une fois votre utilisateur créé sur le serveur, vous récupérez un petit fichier zip contenant tout ce qu'il faut. Vous lancez le script start.bat ou start.sh, et boum, vous avez un proxy SOCKS5 local qui tourne sur 127.0.0.1:1080.

Il ne vous reste alors plus qu'à configurer votre navigateur ou vos applications pour passer par ce proxy SOCKS, et vous voilà libre comme l'air.

C'est dingue ce qu'on peut faire avec un peu d'ingéniosité, non ?

Attention quand même, ça reste du tunnel, donc ne faites pas de bêtises avec... A moins que le DPI en face analyse l'entropie de manière ultra poussée (ce qui est rare car coûteux en ressources), ça devrait tenir, mais ne vous croyez pas invisible pour autant. Pour contourner de la censure ou accéder à vos services hébergés à la maison depuis un wifi public bridé, c'est donc l'outil parfait. Si les mails passent, tout passe !

Le code est dispo sur GitHub pour ceux qui veulent. Perso je me garde ça sous le coude comme ça, ni vu ni connu j't'embouille sur ton wifi bridé nord coréen là ^^.

VHS - Scriptez vos démos terminal en GIF

Vous vous souvenez des cassettes VHS ?

Bon, là rien à voir avec le magnétoscope de mémé qui clignote à 12:00 mais je suis quand même content de vous présenter VHS , un petit outil open source concocté par la team Charm dont je vous ai déjà parlé.

Y'a pas longtemps, je cherchais un moyen propre de faire une petit démo d'un projet perso et je ne sais pas si vous connaissez Terminalizer (j'en avais déjà parlé), mais là pour le coup, j'ai préféré l'approche de VHS parce qu'au lieu d'enregistrer votre terminal en "live" comme Terminalizer et de me faire stresser à chaque faute de frappe, ça me permet de scripter entièrement en amont ma démo.

En fait vous écrivez un fichier ".tape" avec vos instructions, et l'outil génère un rendu (GIF, MP4, WebM) nickel chrome. C'est donc le rêve de tous les perfectionnistes comme moi qui recommencent 15 fois la même capture parce qu'ils ont oublié un sudo ou qu'ils ont bafouillé sur le clavier.

Pour l'installer, comme d'hab :

brew install vhs

Après si vous passez par Docker, c'est possible aussi mais il vous faudra impérativement ttyd et ffmpeg installés sur votre machine pour que ça tourne.

Ensuite, voici à quoi ressemble un scénario en .tape :

Output demo.gif
Set FontSize 20
Set Width 1200
Type "echo 'Salut les amis !'"
Sleep 500ms
Enter
Sleep 2s

Et là, c'est magique, vous lancez la commande et c'est parti :

vhs demo.tape

Il lance alors un terminal invisible, tape les commandes pour vous, et enregistre le rendu. Hop, c'est dans la boîte mes petits Spielberg !

Mais ça ne s'arrête pas là puisqu’on peut aussi contrôler la vitesse de frappe pour donner un effet plus naturel, ou utiliser la commande "Wait" pour mettre le script en pause jusqu'à ce qu'une certaine chaîne de caractères apparaisse à l'écran. Genre pour ne pas couper la vidéo pendant un "npm install" qui dure trois plombes.

Et ce qui est top moumoute avec VHS , c'est que comme c'est du code, vous pouvez versionner vos démos sur Git. Mieux encore, vous pouvez les intégrer dans votre CI/CD avec GitHub Actions. Du coup, si votre CLI change, votre GIF de documentation se régénère automatiquement (à condition de configurer le commit du résultat, bien sûr). C'est ti pas beau ça ?

Comme ça s'en est fini des GIFs flous ou des screencasts qui pèsent une tonne. Avec VHS c'est propre, c'est net, et c'est maintenable !

Stash - Synchroniser vos notes Apple Notes avec Markdown

Si vous êtes comme moi et que vous vivez dans Apple Notes parce que c'est fluide, synchronisé partout, et que ça marche sans qu'on ait à se poser de questions, cet outil va vous plaire.

Parce que oui, voilà, le jour où vous voulez bidouiller vos notes en ligne de commande, les exporter en Markdown, ou simplement éviter de vous retrouver coincé dans votre prison dorée Apple... Et bien c'est la galère. J'ai longtemps cherché une solution propre. Je me suis même dit à un moment que j'allais coder un script Python foireux pour scrapper la base SQLite locale, mais j'ai vite abandonné l'idée.

Pourquoi ? Parce que j'ai découvert Stash , un petit outil en ligne de commande qui fait le pont entre vos notes Apple et des fichiers Markdown.

Et le truc cool, c'est que ça marche dans les deux sens. Vous pouvez exporter vos notes Apple en Markdown (comme ici : Exporter pour vos backups ), mais aussi éditer vos fichiers Markdown et renvoyer les changements directement dans Apple Notes. C'est une vrai synchro bidirectionnelle qui vous rend vraiment maître de vos données.

J'ai testé ça sur macOS Tahoe avec un dossier de notes en vrac. J'ai lancé le bousin, et ça m'a fait plaisir de voir mes fichiers .md popper proprement dans le terminal, prêts à être commités ensuite sur un GitHub ou édités dans VS Code.

L'installation est toute bête, via Homebrew :

brew tap shakedlokits/stash https://github.com/shakedlokits/stash
brew install shakedlokits/stash/stash

Et ensuite, c'est juste 2 commandes. Pour exporter une note Apple vers Markdown, c'est

stash pull "Ma Super Note"

Stash va chercher la note dans Apple Notes, la convertit en Markdown propre via Pandoc, et vous la balance dans un fichier local Ma Super Note.md.

Et la seconde commande c'est pour faire l'inverse (éditer votre Markdown et pousser les changements vers Apple Notes). Là faut faire

stash push "Ma Super Note.md"

Et là, magie !! Vos modifs se retrouvent dans l'app Notes, synchronisées sur tous vos appareils Apple (iPhone, iPad, Mac). C'est dommage que ça soit pas natif ce truc.

Stash c'est chouette (Oula pas facile à prononcer vite celle là) parce qu'il utilise du YAML front-matter pour lier chaque fichier Markdown à une note Apple spécifique (via un ID unique). Quand vous faites stash push, le contenu du fichier écrase la note. Quand vous faites stash pull, la note écrase le fichier.

Attention toutefois car c'est là que ça se corse... Stash écrase sans pitié !! Si vous modifiez votre note sur l'iPhone ET votre fichier Markdown en même temps, c'est le dernier qui parle qui a raison. Y'a pas de fusion intelligente à la Git, donc gaffe aux conflits. C'est un peu brut de décoffrage, mais au moins c'est clair et prévisible.

Bref, pour ceux qui veulent scripter leurs notes, automatiser des backups, ou simplement bosser en Markdown avec leur éditeur préféré, c'est le chaînon manquant. J'avais testé Obsidian et Joplin par le passé, mais la synchro iCloud ou WebDAV m'avait saoulé. Là, c'est le bon compromis avec l'interface Apple pour la saisie, le Markdown pour le stockage long terme.

ProcNetBlocker – Coupez le réseau à n’importe quel processus Windows en une commande

Vous avez un logiciel qui cause un peu trop avec Internet alors qu'il n'a rien à y faire ? Ou un petit utilitaire qui balance de la télémétrie dans votre dos sans vous demander votre avis ? Ou peut-être juste une application que vous voulez forcer en mode hors-ligne sans pour autant couper tout votre réseau ?

C'est LA situation classique où pour leur couper la chique, on finit par se battre avec les menus obscurs du pare-feu Windows. Sauf que maintenant, y'a un petit outil CLI qui fait exactement ça en une seconde : ProcNetBlocker .

C'est un utilitaire Windows en ligne de commande qui permet de bloquer l'accès réseau de n'importe quel processus comme ça pas besoin de créer des règles à rallonge. Vous tapez une commande, et hop, le processus est instantanément coupé du monde extérieur. C'est idéal pour blinder sa vie privée face au tracking incessant de certains éditeurs.

L'outil est super flexible puisqu'il propose deux approches. La première, c'est de cibler un processus par son PID (l'identifiant de processus). C'est parfait pour agir dans l'urgence sur un truc qui tourne déjà. La seconde, c'est de bloquer par le chemin de l'exécutable. Là, c'est plus radical puisque l'outil crée une règle persistante qui s'appliquera à chaque fois que vous lancerez cette application précise.

Le truc est portable (un petit ZIP de 7,5 Mo), et faut juste avoir les droits administrateur (logique, puisqu'on touche au pare-feu) et s'assurer que le service du pare-feu Windows est bien en cours d'exécution. Si vous utilisez déjà des solutions comme CrowdSec pour sécuriser vos serveurs, ProcNetBlocker sera un excellent complément pour vos postes de travail.

Une fois le ZIP récupéré sur le site d'AutoClose, voici les commandes magiques à connaître :

1. Bloquer un processus par son PID

Si vous connaissez l'ID du processus (via le gestionnaire des tâches ou un petit tasklist) :

procnetblocker.exe --block 1234

2. Bloquer un exécutable de façon permanente

procnetblocker.exe --block "C:\Chemin\Vers\MonApp.exe" --exe

3. Vérifier le statut d'un blocage

procnetblocker.exe --status "C:\Chemin\Vers\MonApp.exe" --exe

4. Débloquer le réseau

procnetblocker.exe --unblock 1234

Le projet supporte Windows 7, 8, 10 et 11 (ainsi que les versions Server en 64 bits) et c'est un must-have pour ceux qui aiment garder le contrôle sur ce qui sort de leur ordi !

Merci à Woody pour le partage !

Un générateur de mots de passe qui utilise des regex

Vous avez déjà galéré à créer un mot de passe qui respecte les 42 règles imposées par un site un peu trop zélé ? Genre au moins 16 caractères, une majuscule, une minuscule, un chiffre, un caractère spécial, et surtout pas le prénom de votre chat ni votre date de naissance ?

C’est le genre de micro-agression qui peut flinguer une matinée ^^.

Heureusement, y’a un dev qui a eu une idée de génie en inversat complètement le problème grâce à la puissance brute des expressions régulières.

Son outil s'appelle RegExp Password Generator et comme son nom l'indique, c'est un générateur de mots de passe qui fonctionne avec des regex. Au lieu de cocher des cases un peu nazes dans une interface classique, vous définissez vos contraintes ligne par ligne sous forme d'expressions régulières.

Par exemple, vous balancez ^.{16,32}$ pour imposer une longueur entre 16 et 32 caractères, [0-9] pour exiger au moins un chiffre, and [A-Z] pour une majuscule. L’outil va alors calculer l’intersection de tous vos patterns pour vous sortir 5 mots de passe aléatoires qui matchent absolument toutes vos règles simultanément.

L'outil repose heureusement sur la bibliothèque TypeScript @gruhn/regex-utils. Pour ceux qui font du code, vous savez que manipuler des regex pour faire des intersections ou des compléments, c'est normalement une purge monumentale que la plupart des langages de programmation ne gèrent pas nativement.

C'est pourquoi ici, la lib fait tout le sale boulot de calcul d'ensemble pour s'assurer que vos contraintes ne sont pas contradictoires. Si vous demandez un truc impossible (genre un mot de passe qui doit être composé uniquement de chiffres ET uniquement de lettres), l’outil vous le dit direct au lieu de mouliner dans le vide.

Et tout tourne en local dans votre navigateur donc c'est cool pour la vie privée, par contre, gardez en tête que la lib supporte un sous-ensemble bien précis de la syntaxe RegExp de JavaScript. Inutile donc tenter des trucs ultra exotiques comme les lookbehinds complexes, l'outil risque de vous renvoyer une erreur.

Le côté pratique, c'est que vos contraintes sont directement encodées dans l'URL. Du coup, vous pouvez bookmarker une config précise pour un site spécifique ou la partager avec vos collègues sans avoir à tout retaper à chaque fois. Un petit compteur affiche même le nombre total de combinaisons possibles avec vos règles, histoire de vérifier que vous n'avez pas créé un mot de passe trop prévisible (ou au contraire, un truc tellement restrictif qu'il n'existe qu'une seule possibilité).

Bref, j'ai trouvé ça original !

❌