Command Palette

Search for a command to run...

Les utilitaires de développement que j'utilise réellement

Les utilitaires de développement que j'utilise réellement

T
Toolz Team
|Jun 30, 2026|20 min Lire

Fait partie de la collection chiffrage

Je passe la majeure partie de ma semaine dans un contrôleur Laravel, un composant React ou la base de code du plugin WP Adminify. Et dans chacun de ces éléments, la partie "écriture du code" est peut-être la moitié du travail. L'autre moitié est le tissu conjonctif : formater une API JSON et craquer, décoder le segment du milieu d'un JWT pour voir pourquoi Auth échoue, générant quarante UUID de tests pour un semoir, convertissant un horodatage Unix dans une ligne de journal en quelque chose qu'un humain peut lire.

Pendant des années, je les ai fait de manière maladroite - un script Node jetable, jq Si je me souviens de la syntaxe, ou, le plus souvent, d'un site utilitaire aléatoire avec trois bannières publicitaires et un mur de cookies. La dernière option est ce qui m'a finalement poussé à construire Toolz.dev. Trop de ces sites publient tranquillement votre entrée sur un serveur pour un travail que le navigateur peut effectuer localement, et j'en ai eu assez de coller des éléments de la configuration d'un client dans le backend d'un étranger pour l'imprimer.

Ce guide est la boîte à outils réelle - les outils de codage que je garde mis en signet et ouverts plusieurs fois par jour Chacun fonctionne entièrement dans votre navigateur, donc les données ne quittent jamais votre machine, et aucun d'entre eux ne vous demande de vous inscrire I&#39 ; passera par chacun d'eux comme je l'utilise, où il économise du temps réel, et les erreurs I&#39 ; a fait donc vous don&#39 ; pas besoin de les répéter.

tl;dr : Pour le travail des API, Formateur JSON embellit et valide, et Convertisseur de base64 Décode les jetons et les URI de données. Pour la correspondance de motifs, Regex Builder Les modèles de tests en direct. Pour les identifiants, Générateur UUID Fait la V1/V4/V7 en masse. Pour le débogage, Convertisseur d'horodatage Transforme les secondes d'époque en dates lisibles, et générateur de hasch Est-ce que MD5/SHA. Tout côté client, tout est gratuit.


Pourquoi utiliser un outil autonome au lieu de votre IDE ou du terminal ?

Je reçois cette question d'autres développeurs, et c'est le cas de & #39 ; c'est juste - VS Code a des extensions, et le terminal l'a fait jq, openssl, et base64 intégré. Alors pourquoi ouvrir un onglet de navigateur ?

La réponse honnête est la friction et le contexte Les outils CLI sont fantastiques quand ils&#39 ; sont déjà dans un script que vous exécutez à plusieurs reprises Mais pour un &quot ;what&#39 ; s à l'intérieur de ce jeton en ce moment&quot ; - le coût de la mémorisation openssl dgst -sha256 ou obtenir le jq La syntaxe de filtre est plus élevée que la tâche elle-même. Les extensions IDE résolvent une partie de cela, mais elles sont liées à un seul éditeur, elles doivent être installées et configurées, et la moitié d'entre elles n'ont pas été mises à jour depuis deux ans. Quand je suis ssh dans une boîte, sur une machine de collègue ou sur mon téléphone, aucune de ces configurations n'existe.

Un outil de navigateur contourne tout cela Il fait un travail, expose exactement les options dont le travail a besoin, et il & #39 ; est le même sur chaque appareil Les trois signets permanents I & #39 ; d call sont le formatage JSON, le test regex et le décodage Base64 - le reste est situationnel mais toujours plus rapide que l'alternative pour un passage rapide.

Il y a aussi un angle de confidentialité, et c'est la raison pour laquelle Toolz.dev est le premier navigateur. Chaque outil traite votre entrée avec JavaScript dans votre propre onglet. Il n'y a pas de téléchargement, pas de serveur aller-retour, pas de journal de ce que vous avez collé. qui compte lorsque "l'entrée" est un JWT avec une session en direct, un .env Fichier ou un enregistrement client que vous êtes censé déboguer.


Comment formater et valider rapidement JSON ?

JSON est le langage que tout parle - API REST, fichiers de configuration, pipelines de journaux, la moitié des bases de données que je touche Et JSON brut, en particulier une réponse minifiée, est illisible. Here&#39 ; est une vraie forme de chose avec laquelle je traite constamment :

{"users":[{"id":1,"name":"Alice","roles":["admin","editor"],"settings":{"theme":"dark","notifications":{"email":true,"push":false}}},{"id":2,"name":"Bob","roles":["viewer"],"settings":{"theme":"light","notifications":{"email":false,"push":true}}}]}

Trouver si Bob a des notifications push sur signifie numériser ce caractère par caractère. Collez-le dans le Formateur JSON et cela devient un arbre en retrait en un clic Au-delà de l'embellissement, la partie sur laquelle je m'appuie le plus est la validation - elle pointe sur la ligne exacte où une virgule traînante ou une citation non échappée a cassé le document, ce qui est un véritable gain de temps lorsqu'une API vous donne quelque chose de presque mais pas tout à fait valide.

Les quatre choses qu'il fait que j'utilise réellement:

  • embellir Avec 2 espaces, 4 espaces ou indentation d'onglets (j'utilise 2 pour faire correspondre les valeurs par défaut).
  • réduire Pour supprimer les espaces blancs avant d'expédier une charge utile.
  • valider avec un message d'erreur qui nomme la position, pas seulement "invalide JSON".
  • Vue arborée Pour naviguer dans les réponses profondément imbriquées sans compter les crochets.

Une erreur que j'ai commise tôt et maintenant avertie tout le monde : une fois "fixé", une configuration en la collant dans un formateur qui acceptait silencieusement des virgules et des commentaires de style JSON5, puis s'est demandé pendant une heure pourquoi l'analyseur strict de la production l'avait rejeté. Un bon validateur vous tiendra au Spec JSON (ECMA-404 / RFC 8259)- pas de commentaires, pas de virgules de fin, des touches à double citation - ce qui est exactement ce que vous voulez avant de déployer Pour le flux de travail complet, les formats, et les astuces de conversion, j'ai écrit un dédié Guide des outils JSON.


A quoi sert Base64 et quand en avez-vous besoin ?

Base64 est l'une de ces choses que chaque développeur rencontre mais peu s'arrêtent pour comprendre jusqu'à ce qu'il les mord. Il convertit les données binaires en un alphabet ASCII de 64 caractères afin qu'il survive au transport via des canaux de texte uniquement. Il ne s'agit pas de cryptage et non de compression - il rend les données environ 33 % plus volumineuses - il rend simplement les octets sûrs à coller dans le texte.

Où je l'ai frappé en pratique :

  • JWT- l'en-tête et la charge utile sont des JSON codés Base64url. Décoder le segment central pour voir les réclamations et l'expiration.
  • URI de données- intégrer une petite icône directement dans CSS avec data:image/png;base64,... Pour enregistrer une requête HTTP.
  • Authentification de base HTTP- les informations d'identification sont codées en Base64 dans le Authorization en-tête.
  • Config et secrets- Les secrets de Kubernetes, par exemple, stockent les valeurs codées par Base64 (que les gens confondent constamment avec le cryptage - ce n'est pas le cas).

le Convertisseur de base64 Encode et décode instantanément : coller, choisir une direction, copier. Le seul gocha qui mérite d'être connu est la différence entre la norme Base64 et la variante de sécurité URL définie dans RFC 4648- Échanges sécurisés par URL +/ pour -_ Et laisse tomber le rembourrage, ce que les JWT utilisent. Amenez un segment JWT à un décodeur qui attend la base64 standard et il s'étouffera avec le rembourrage manquant. J'explique l'algorithme, la variante URL-safe et le piège Unicode qui capture btoa() dans le total Guide d'encodage Base64.


Comment construire une regex sans deviner ?

Les expressions régulières sont la chose la plus puissante et la plus frustrante dans la boîte à outils en même temps La syntaxe est dense, impitoyable, et un seul quantificateur mal placé change ce qu'un motif correspond La raison pour laquelle un constructeur visuel compte est qu'il transforme la boucle d'écriture-test-échec-réécriture en une boucle en direct - vous voyez les correspondances surligner lorsque vous tapez.

Ce sont les modèles que j'ai validés et réutilisés constamment :

habitude allumette exemple
^[\w.%+-]+@[\w.-]+\.[A-Za-z]{2,}$ Courriel pratique [email protected]
^https?://[\w\-.]+\.\w+ ouverture https://toolz.dev
^\d{3}-\d{3}-\d{4}$ Téléphone américain 555-123-4567
^(?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d?\d)$ IPv4 192.168.1.1
^#(?:[A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$ couleur hexagonale #4466EE
^\d{4}-\d{2}-\d{2}$ date ISO 2026-07-11

Collez-en un dans le Regex Builder, déposez quelques chaînes de test et basculez le g/i/m drapeaux pour regarder ce qui change La plus grande leçon que I&#39 ; a apprise ici est d'éviter un retour en arrière catastrophique - un modèle comme ^(a+)+$ Cela semble inoffensif mais se fige sur une longue entrée non-correspondante car le moteur explore un nombre exponentiel de chemins. C'est un véritable vecteur de refus de service, pas une curiosité. Je vais en profondeur, ainsi qu'une feuille de triche complète et des bizarreries spécifiques à la langue, dans le Guide de construction de Regex.


Quelle version de UUID devez-vous générer ?

Universally Unique Identifiers sont des valeurs de 128 bits que vous pouvez générer indépendamment sur des millions de machines sans coordination et toujours faire confiance pour être unique Si vous construisez quelque chose distribué - microservices, applications hors ligne d'abord, bases de données réduites - vous avez besoin d'eux Le problème est qu'il existe plusieurs versions et la plupart des gens atteignent le mauvais par habitude.

La version courte de ce que je recommande en 2026 :

  • V4 (au hasard)- 122 bits aléatoires, pas de fuite de temps ou de matériel La valeur par défaut sûre lorsque vous faites un don&#39 ; pas besoin d'une commande.
  • V1 (horodatage + Mac)- ordonné dans le temps mais divulgue la machine génératrice&#39 ; s adresse MAC. Éviter pour les nouveaux travaux.
  • V7 (ordonné + aléatoire)- un horodatage Unix d'une milliseconde suivi d'un caractère aléatoire, standardisé en RFC 9562 (2024). C'est ma valeur par défaut pour les nouvelles clés primaires de base de données car elles sont bien triées dans un index B-Tree sans les problèmes de confidentialité de V1.

le Générateur UUID Produit des ID uniques ou en bloc dans n'importe quelle version en un seul clic, ce que je veux exactement lors de l'ensemencement d'une table. Une chose que j'ai apprise de la manière coûteuse : stocker les UUID VARCHAR(36) au lieu d'un natif uuid/BINARY(16) Le type double le stockage et ralentit chaque comparaison d'index. Sur une table avec des millions de lignes, ce n'est pas une erreur d'arrondi. La ventilation complète des versions, le stockage de la base de données et la décision V7-VS-Auto-Incrément se trouvent dans le Guide du générateur UUID.


Comment convertir entre les horodatages Unix et les dates lisibles ?

Le temps est le domaine de programmation le plus sujet aux erreurs, et je dis cela en tant que personne qui a expédié un bogue, car j'ai mélangé des secondes et des millisecondes. Les journaux de serveurs parlent unix epoch, JavaScript parle en millisecondes, les API REST parlent ISO 8601 et les en-têtes de courrier électronique parlent RFC 2822. La conversion entre eux à la main est la façon dont vous vous retrouvez d'un facteur de mille.

format exemple Où vous le voyez
Époque Unix (secondes) 1783929600 Journal des serveurs, la plupart des API
Époque Unix (ms) 1783929600000 Javascript, Java
ISO 8601 2026-07-11T00:00:00Z API de repos, JSON
RFC 2822 Sat, 11 Jul 2026 00:00:00 +0000 En-têtes d'e-

le Convertisseur d'horodatage Gère tout cela avec le support de fuseau horaire, ce que j'ouvre au moment où une ligne de journal contient un nombre nu. A savoir : le timestamp classique signé Unix 32 bits déborde le 19 janvier 2038 (le problème "Y2K38"), c'est pourquoi tout ce qui stocke du temps devrait utiliser un entier de 64 bits maintenant. Si vous traitez quotidiennement les journaux, conservez celui-ci.


Qu'en est-il de YAML, de hachage et de conversion de format ?

Ces trois complètent l'ensemble quotidien même si je les utilise moins que les têtes d'affiche.

banane est le langage de configuration de Kubernetes, Docker Compose et GitHub Actions, et sa sensibilité d'indentation le rend fragile - un onglet parasite (YAML interdit les onglets pour l'indentation) ou un onglet non cité no Cela est analysé alors qu'un booléen va casser un déploiement. le Validateur de YAML les attrape instantanément, et le XML vers JSON et JSON vers Yaml Les convertisseurs gèrent le formatage de formatage lorsque vous déplacez une configuration entre les systèmes.

hachage est pour l'intégrité, pas pour le secret. j'utilise le générateur de hasch pour vérifier un fichier téléchargé par rapport à sa somme de contrôle publiée, ou pour construire des clés de cache de hachage de contenu La règle qui compte : MD5 et SHA-1 conviennent bien pour les sommes de contrôle non sécuritaires mais sont cassées pour tout ce qui pourrait permettre à un attaquant de forger une collision - utilisez SHA-256 ou mieux là-bas.

algorithme production Utilisez-le pour sûreté
MD5 128 bits Checksums, clés de cache Cassé pour la sécurité
SHA-1 160 bits Compatibilité héritée obsolète
SHA-256 256 bits Signatures, intégrité engager
SHA-512 512 bits Hachage haute sécurité engager

Conversion de format- le déplacement des données entre JSON, CSV, YAML et XML - apparaît constamment lorsque I&#39 ; m alimente une API&#39 ; s sort dans une feuille de calcul ou l'inverse. Toolz.dev a JSON vers CSV, CSV à JSON, et les convertisseurs XML/YAML ci-dessus. La seule mise en garde : le CSV ne peut pas représenter des structures imbriquées, de sorte que tout JSON-to-CSV de données profondément imbriquées est perdu et doit d'abord être aplati. Testez toujours sur un petit échantillon avant de convertir une grande exportation.


À quoi ressemble un véritable flux de travail multi-outils ?

Les outils ont la plus grande valeur lorsque vous les enchaînez, car le débogage réel est rarement une étape. Un exemple concret du mois dernier, débogage de la raison pour laquelle un jeton a été rejeté :

  1. J'ai copié le JWT à partir d'un en-tête de requête défaillant et le diviser sur les points.
  2. collé le segment du milieu (charge utile) dans le Convertisseur de base64 pour le décoder - en le mémorisant&#39 ; s Base64 sécurisée par URL.
  3. a laissé tomber le JSON résultant dans le Formateur JSON pour lire les revendications.
  4. a pris le exp valeur (un horodatage Unix) et l'a exécuté à travers le Convertisseur d'horodatage- qui montrait que le jeton avait expiré quatre heures plus tôt Indice d'horloge sur le serveur émetteur Corrigé en minutes au lieu de l'après-midi, il aurait fallu ajouter la journalisation du débogage et le redéploiement.

C'est le modèle : chaque outil fait une chose, et la sortie d'un alimente l'autre. Parce que tout fonctionne côté client, aucune de ces données de jetons n'a jamais quitté mon ordinateur portable, ce que vous voulez exactement lorsque la chose que vous déboguez est l'authentification.

Quelques habitudes qui les maintiennent rapidement : Bookmark les cinq outils que vous touchez le plus (Toolz.dev font également surface vos récemment utilisés), s'appuient sur les raccourcis standard du presse-papiers et valident toujours les configurations, les manifestes et les modèles. avant un déploiement - une erreur de syntaxe qu'un validateur attrape coûte quelques secondes ; la même erreur détectée dans la production coûte un après-midi.


Questions fréquentes

Quels sont les outils de codage les plus essentiels pour un développeur Web ?

L'ensemble de base I & #39 ; d donner tout développeur Web est un formateur et un validateur JSON, un encodeur/décodeur Base64, un testeur de regex, un générateur UUID, un générateur de hachage et un convertisseur d'horodatage Ceux-ci couvrent l'écrasante majorité des tâches sans code d'écriture qui remplissent une journée normale - inspecter les réponses API, décoder les jetons, générer des données de test et lire les journaux Tout le reste est situationnel.

Les outils de codage basés sur un navigateur sont-ils sûrs pour les données sensibles, comme les jetons et les clés ?

Cela dépend entièrement de la question de savoir si l'outil traite les données de votre navigateur ou d'un serveur. Des outils côté client comme ceux de Toolz.dev exécutez en JavaScript dans votre propre onglet, afin que votre entrée ne soit jamais téléchargée ou enregistrée nulle part. Avant de coller quelque chose de sensible - un JWT, une clé API, un .env value - dans n'importe quel outil en ligne, confirmez-le et le côté client n°39 ; Si un outil vous demande de &quot ; télécharger&quot ; ou affiche une demande réseau lorsque vous appuyez sur le processus, traitez les données comme exposées.

Quelle est la différence entre un formateur JSON et un validateur JSON ?

Un validateur répond à une question - est-ce que cette JSON analysable, oui ou non - et si la réponse est non, il vous indique la ligne et la colonne où l'analyse a échoué Un formateur réimprime un JSON valide avec une indentation cohérente pour qu'un humain puisse le lire En pratique ils&#39 ; sont la même opération : un formateur doit analyser l'entrée avant de pouvoir l'imprimer en joliment, donc tout décent signale l'erreur de syntaxe comme effet secondaire Atteignez le validateur&#39 ; s message d'erreur lorsqu'une demande est rejetée, et le formateur&#39 ; est émis lorsqu'une réponse est illisible.

Comment décoder un JWT en toute sécurité ?

Utilisez un décodeur qui exécute le client-side et ne colle jamais un s'installer jeton de production dans tout ce que vous avez & #39 ; t vérifié Un en-tête et une charge utile JWT&#39 ; s sont codés Base64url, non cryptés - toute personne qui possède le jeton peut lire les réclamations, c'est pourquoi le jeton lui-même est le secret Le décodage est bon pour la lecture exp, iss, et les réclamations lors du débogage. La vérification de la signature est une étape distincte qui nécessite la clé de signature, et cette clé ne doit jamais quitter votre serveur.

Comment convertir un horodatage Unix en une date lisible ?

Collez le nombre dans un convertisseur d'horodatage et lisez la date dans UTC et dans votre zone locale Le seul véritable piège est l'unité : un nombre à dix chiffres est secondes (la convention Unix, et ce que la plupart des backends émettent), tandis qu'un nombre à treize chiffres est millisecondes (la convention JavaScript).Faites passer des millisecondes dans un analyseur de secondes et vous atterrissez quelque part autour de l'an 55 000 - une erreur que & #39 ; est évidente une fois que vous & #39 ; l'avez vu une fois et déroutant la première fois.

Comment ces outils se comparent-ils aux utilitaires CLI tels que JQ et OpenSSL ?

Les outils CLI sont plus puissants et scriptables, et pour tout ce qui est répétitif qui vit dans un script, ils gagnent Les outils du navigateur gagnent pour un travail ponctuel et interactif : there&#39 ; s rien à installer, aucune syntaxe à retenir, et ils fonctionnent de manière identique sur n'importe quelle machine ou téléphone J'utilise les deux - jq Dans les pipelines, le formateur de navigateur lorsque j'ai juste besoin d'un œil de réponse. Ils sont complémentaires, pas des concurrents.

Puis-je utiliser ces outils hors ligne ?

Ils ont besoin d'une connexion pour charger la page initialement, mais comme le traitement lui-même s'exécute côté client, le travail réel ne dépend pas d'un serveur après chargement. Certains outils continuent de fonctionner si votre connexion tombe en mi-session. Pour une utilisation hors ligne garantie, une installation d'application Web progressive ou une construction de bureau est la voie la plus fiable.

Pourquoi utiliser les outils de navigateur au lieu des extensions IDE ?

Les outils de navigateur sont indépendants de l'éditeur et nécessitent une configuration nulle, donc ils et n°39 ; sont disponibles sur une machine colleger&#39 ; s, un serveur distant ou votre téléphone - partout où un IDE et ses extensions sont et n°39 ; t installés et configurés Ils et n°39 ; sont idéaux pour les tâches rapides et pour les utilitaires, votre éditeur le fait simplement&n°39 ; n'a pas un bon plugin pour. Les extensions IDE sont meilleures lorsque la tâche est quelque chose que vous effectuez dans un éditeur des dizaines de fois par jour.

À quelle version d'UUID dois-je utiliser par défaut en 2026 ?

Pour les nouvelles clés primaires de la base de données, UUID v7 - it&#39 ; s ordonnées dans le temps pour de bonnes performances d'index tout en restant globalement uniques, et it&#39 ; s maintenant normalisées dans la RFC 9562. atteindre la v4 lorsque vous voulez spécifiquement l'imprévisibilité, comme les identifiants qui devraient&#39 ; t être devinables Évitez la v1 pour tout ce qui est nouveau car elle laisse échapper la machine génératrice&#39 ; s adresse MAC.

Base64 est-il une forme de cryptage ?

Non, et le traiter comme tel est une erreur courante et dangereuse Base64 est un encodage réversible que tout le monde peut décoder instantanément - il existe pour rendre les données binaires sûres à transmettre sous forme de texte, pas pour les cacher Les secrets Kubernetes et les en-têtes Basic Auth utilisent Base64, mais cela offre une confidentialité nulle ; tout ce qui est véritablement secret a besoin d'un cryptage réel par-dessus.


la version courte

Le bon petit outil transforme une corvée de deux minutes en une corvée de deux secondes, et sur une semaine, ces secondes totalisent des heures réelles. Du formatage d'une réponse JSON au décodage d'un jeton, en passant par le test d'un regex ou la lecture d'un horodatage, ce sont les utilitaires que j'atteins réellement - non pas parce qu'ils et n°39 ; sont intelligents, mais parce qu'ils s'écartent du chemin.

Tout ici vit sur Toolz.dev, s'exécute entièrement dans votre navigateur pour plus de confidentialité et de rapidité, et ne vous demande jamais de vous inscrire. Commencez par le Formateur JSON et Regex Builder, puis parcourez l'ensemble complet de Outils de codage- il existe plus de 600 outils gratuits couvrant le codage, le texte, le PDF et le travail d'image en attente lorsque vous en avez besoin.

Frequently Asked Questions

The core set I'd give any web developer is a JSON formatter and validator, a Base64 encoder/decoder, a regex tester, a UUID generator, a hash generator, and a timestamp converter. Those cover the overwhelming majority of the non-writing-code tasks that fill a normal day — inspecting API responses, decoding tokens, generating test data, and reading logs. Everything else is situational.

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!