Formater, valider et minifier du JSON, sans deviner où est l'erreur
Vous avez collé une réponse d'API et c'est une longue ligne sans indentation. Ou vous avez une config avec des centaines de clés et vous ne savez même pas si elle est valide. Ou vous voulez envoyer du JSON dans un payload et tenez à le garder aussi petit que possible.
Cet outil fait trois choses : formate (indentation lisible 2/4 espaces ou tabulation), minifie (zéro espace blanc, taille la plus petite possible) et valide (badge vert "JSON valide" ou erreur rouge avec la ligne et la colonne exactes de l'échec).
Tout s'exécute dans votre navigateur, rien n'est envoyé nulle part. Le parsing utilise le moteur JavaScript natif (le même que Node.js et Chrome), la validation correspond donc exactement à ce que votre backend acceptera. Plus des statistiques : profondeur d'imbrication, nombre total de clés, répartition par type (strings, numbers, booleans, null). Pratique pour le débogage, la revue de code et la compréhension du payload d'un tiers.
Comment l'utiliser
- Choisissez un mode en haut : Format (lisible, avec indentation), Minify (compact, une ligne) ou Validate (vérifie juste la conformité et affiche les stats).
- Collez votre JSON dans le panneau de gauche. Un exemple réaliste de réponse d'API (une commande de boutique) est chargé par défaut, vous voyez ce que fait l'outil immédiatement. Écrasez-le ou cliquez sur "Effacer".
- En mode Format, choisissez l'indentation : 2 espaces (standard web), 4 espaces (plus lisible sur les structures profondes) ou tab (si c'est ce que votre projet utilise).
- Activez Sort keys (tri alphabétique au sein de chaque objet) pour faciliter le diff de deux payloads. Les tableaux conservent leur ordre original.
- En mode Minify, vous voyez aussi la taille avant et après plus le pourcentage économisé. Une économie typique pour du JSON bien formaté est de 30-50 %.
- Si le JSON est invalide, le panneau de droite affiche une boîte rouge avec le message d'erreur plus la ligne, colonne et position de caractère exactes. Suspects habituels : virgule manquante, virgule en trop, string non terminée.
- Stats en dessous : profondeur (imbrication la plus profonde), clés totales, valeurs totales, répartition par type. Utile pour repérer les payloads "trop larges" ou "trop profonds" pour votre base de données.
- Cliquez sur Copy dans le panneau de droite pour copier le résultat dans le presse-papiers. Tout se passe en local, aucune donnée ne quitte jamais votre navigateur.
Quand c'est utile
Six situations typiques où cet outil vous épargne du travail manuel :
- Déboguer une réponse d'API. Vous avez reçu une longue ligne d'un appel fetch. Collez, formatez en indentation 2 espaces, voyez la structure en 3 secondes et repérez le champ qui est null au lieu d'un objet, la cause exacte du bug que vous pourchassiez.
- Vérifier une config avant déploiement. Votre package.json, tsconfig.json ou workflow CI doit être du JSON valide, sinon le build échouera. Collez, validez, et vous voyez qu'il y a une virgule en trop après le dernier élément du tableau à la ligne 47, le bug classique de 20 minutes.
- Comparer deux versions de payload. Vous avez une réponse de deux environnements (staging vs production) et vous voulez savoir ce qui diffère. Activez "Sort keys" pour les deux, collez les deux dans votre outil de diff, et vous voyez les vraies différences en 5 secondes, sans bruit de "champ réordonné" qui noie les vrais changements.
- Optimiser la taille d'un payload. Vous envoyez du JSON sur WebSocket ou HTTP et tenez à son poids. Minifiez : vous voyez 2,4 Ko tomber à 1,2 Ko, soit 50 % de données en moins sur le réseau. Multipliez par 10 000 requêtes quotidiennes et vous avez de vraies économies.
- Faire la revue de code du JSON d'un autre. Un collègue a collé une config non formatée dans une PR. Collez, formatez, vous voyez la structure. Plus les stats : profondeur 7, 340 clés, drapeau rouge, payload trop large, suggérez de scinder en fichiers séparés.
- Apprendre une nouvelle API. Vous avez reçu une réponse exemple d'un vendeur (Stripe, GitHub, Slack), collez, formatez, comprenez la structure en 30 secondes au lieu de fouiller la doc. Vous voyez aussi combien de champs sont optionnels (nulls) et à quel point c'est imbriqué.