Générateur TypeScript → JSON Schema

Entrée Code TypeScript

Chargement de l’éditeur…

Sortie JSON Schema

Paramètres

Choisissez quelle interface/type doit être considérée comme racine du JSON Schema.

Le parsing s’exécute entièrement dans votre navigateur. Votre code ne quitte jamais la page.

Collez vos types TypeScript pour produire du JSON Schema instantanément.

Support des interfaces, type aliases, champs publics, optionnels/readonly et union types.

Comment convertir interfaces, types et classes TypeScript en JSON Schema — guide pas à pas

Ce convertisseur en ligne (TypeScript → JSON Schema) vous aide à générer du JSON Schema à partir de modèles réels (DTOs, structs et classes) pour valider des payloads, partager des contrats et générer du mock JSON.

  1. Étape 1 – Collez votre source TypeScript

    • Collez les modèles à documenter dans l’éditeur de gauche.
    • Incluez les types référencés dans le même snippet afin de générer les definitions.
    • Utilisez le bouton Exemple pour charger un exemple et voir le format attendu.
  2. Étape 2 – Sélectionnez la Type racine (si besoin)

    • Si plusieurs definitions sont détectées, choisissez la racine qui correspond à votre payload d’API.
    • Le schéma de sortie est construit autour de la racine sélectionnée et peut inclure des definitions supplémentaires.
  3. Étape 3 – Vérifiez la sortie JSON Schema

    • Contrôlez types, champs requis vs optionnels, et structures imbriquées d’objets/arrays.
    • Surveillez definitions et $ref lorsque vos modèles référencent d’autres modèles.
    • Copiez ou téléchargez le schéma pour validation, documentation ou approche schema-first.
  4. Étape 4 – Valider ou générer du mock JSON

    • Cliquez sur Générer des données mock pour ouvrir le générateur de mock avec votre schéma préchargé.
    • Validez des payloads réels avec votre schéma pour détecter tôt les breaking changes.
    • Si vous utilisez une composition avancée (par ex. anyOf/oneOf/allOf), vérifiez le résultat avec un validateur complet comme Ajv.

Note sur le support des mots-clés

Les schémas générés peuvent inclure $ref et peuvent être édités pour ajouter anyOf, oneOf, ou allOf. Pour des schémas complexes, utilisez un validateur JSON Schema complet et dereferencez avant génération de mock si nécessaire.

Outils liés à JSON Schema et à la génération de code

Utilisez ces outils pour valider des schémas, générer des payloads mock, formater des exemples JSON et synchroniser code et contrats.

Questions fréquentes

Quelle syntaxe TypeScript est supportée ?

Interfaces, type aliases et classes avec champs publics. Propriétés optionnelles, readonly, clés string-literal, union types, arrays, Record et références imbriquées sont gérés. Commentaires et decorators sont ignorés pour coller des DTOs directement.

Comment fonctionne le mapping des types ?

Types primitifs (string, number, boolean, bigint, Date) → primitives JSON Schema avec formats adaptés. Arrays (Foo[]/Array<Foo>), Record<string, T> et formes dictionnaire deviennent arrays/objects. Les unions avec null/undefined rendent le champ optionnel.

Fonctionne-t-il pour les classes aussi ?

Oui. Si la classe définit des champs publics (ou readonly) avec annotations de type, elle est convertie en JSON Schema. Tout fonctionne dans le navigateur : aucun code ne sort de votre machine.

Comment obtenir du mock JSON ?

Après génération du schéma, cliquez sur "Générer des données mock" pour ouvrir le Générateur de Mock avec le schéma préchargé. Configurez locale, tailles d’array et champs optionnels.

Générateur TypeScript → JSON Schema | JSONSwiss