Aller au contenu
Tous les projets

Personnel · 2026

AirToolkit

Boîte à outils hors ligne pour développeurs sur des postes Windows isolés : 38 utilitaires JSON, crypto, certificats, réseau et logs dans une application Tauri native, sans aucun appel réseau non sollicité.

Durée
About 4 weeks
Stack principale
Tauri · Rust · React Js
Statut
Terminé
Aperçu de AirToolkit

Présentation

AirToolkit est une boîte à outils gratuite et open source pour les développeurs qui travaillent sur des postes Windows sans accès à internet. Elle réunit 38 utilitaires du quotidien pour le développement et l’IT dans une seule application de bureau native qui n’effectue aucun appel réseau de sa propre initiative : pas de télémétrie, pas de mise à jour automatique, pas de CDN, aucun « phone-home ».

L’idée est née de mon propre travail sur des machines virtuelles sans internet, au sein d’une entreprise B2B spécialisée dans la sécurité et le contrôle d’accès, où il est tout simplement impossible d’ouvrir un formateur JSON ou un testeur de regex en ligne. J’ai conçu et développé l’ensemble du produit : l’application, sa procédure de vérification hors ligne, les installateurs Windows et le site du produit.

Le défi

  • Les postes isolés ou verrouillés n’ont pas accès aux outils en ligne que les développeurs utilisent chaque jour.
  • Beaucoup d’outils présentés comme « hors ligne » chargent encore des analytics, des polices depuis un CDN ou des vérifications de mise à jour, qui échouent ou contactent un serveur dès qu’ils sont bloqués.
  • Coller un JWT de production, une clé privée ou le fichier .env d’un client dans un site web est inacceptable dans un environnement sensible.
  • L’application devait rester légère, rapide et simple à déployer pour les équipes IT, sans compte, sans clé de licence et sans téléchargement après l’installation.

Ce que j’ai réalisé

38 outils en six catégories

Une barre latérale avec recherche regroupe les outils par usage :

  • Données & formats : formateur JSON, diff JSON structurel, validation JSON Schema avec ajv, conversion JSON ↔ YAML / TOML, formateurs XML / CSV et SQL, aperçu Markdown assaini.
  • Sécurité & crypto : décodeur JWT, générateur d’empreintes et d’UUID, décodeur de certificats X.509, générateur de certificats et de CSR (RSA 2048/4096 ou ECDSA P-256, clés générées en local), analyse de la robustesse des mots de passe.
  • Texte, réseau et DevOps : encodeurs, échappement de chaînes, testeur de regex, diff, conversion cURL ↔ requête, calculateur de sous-réseaux CIDR, explication des expressions cron avec les prochaines exécutions, analyseur de logs, diff de fichiers dotenv et panneau d’informations système.
  • Fichiers et médias : inspecteur hexadécimal avec détection des « magic bytes », encodeur de fichiers Base64, génération et lecture de QR codes, générateur de favicons, extraction de palettes de couleurs, générateur de données fictives et bloc-notes.

Une seule exception réseau, assumée

Le testeur de requêtes API est le seul outil qui envoie du trafic : uniquement la requête que l’utilisateur compose lui-même, à la demande, vers un service de son propre réseau. Il est facultatif et signalé dans sa propre interface ; l’application elle-même n’effectue donc aucun appel non sollicité.

Une distribution adaptée à l’entreprise

La version 0.1.0 est disponible sous forme d’installateur classique et de paquet MSI pour un déploiement par stratégie de groupe ou SCCM. Les deux se copient sur un poste isolé et s’installent sans aucun téléchargement supplémentaire.

Site du produit

Un site Next.js distinct présente les outils, le modèle de sécurité, une FAQ et les téléchargements.

Architecture & sécurité

  • Socle natif : Tauri 2 avec un cœur en Rust plutôt qu’Electron, pour un installateur léger, un démarrage rapide et une faible consommation mémoire. La version de production est optimisée avec LTO et symboles supprimés.
  • Tout est embarqué : polices, bibliothèques et ressources sont intégrées au binaire ; rien n’est téléchargé à l’exécution.
  • Webview verrouillée : une Content Security Policy stricte limite les scripts, les styles et les connexions à l’application elle-même.
  • Permissions minimales : la permission HTTP est la seule capacité réseau accordée, et elle n’existe que pour le testeur de requêtes API.
  • Audit statique : un audit documenté par grep recherche les primitives réseau dans le code frontend et Rust à chaque modification ; la seule correspondance attendue est le testeur de requêtes API.
  • Vérification à l’exécution : une procédure de publication documentée bloque le binaire avec une règle du pare-feu Windows et vérifie que tous les autres outils continuent de fonctionner.

Stack technique

  • Bureau : Tauri 2, Rust, React 19, TypeScript, Tailwind CSS, Vite.
  • Bibliothèques clés : @peculiar/x509, ajv, js-yaml, @iarna/toml, sql-formatter, marked avec DOMPurify, qrcode, jsQR, cron-parser, Faker.
  • Site web : Next.js.

Résultats

  • Une seule application native qui remplace une dizaine d’outils en ligne sur des postes qui n’y ont pas accès.
  • Une promesse « hors ligne » appuyée par un audit reproductible, et pas seulement affirmée.
  • Un projet open source sous licence MIT, prêt à être déployé par les équipes IT avec les outils Windows standards.
Projet suivantNeuroKey : Gestionnaire de Mots de Passe