Ce qu’il fait
L’outil JSON → TypeScript lit n’importe quel JSON valide et en déduit des interfaces TypeScript propres et typées — fini l’écriture de types à la main. Il gère les objets imbriqués (chacun reçoit une sous-interface nommée), les tableaux (T[]), les tableaux hétérogènes (fusionnés en unions ou en vraie union, à votre choix), les valeurs primitives et null. Les formes imbriquées identiques sont dédupliquées en une interface partagée, et les clés qui entrent en collision avec des mots réservés TypeScript sont automatiquement quotées. Tout tourne à 100 % dans votre navigateur — vous pouvez donc coller des payloads réels et sensibles.
Comment l’utiliser
- Collez votre JSON dans la zone d’entrée JSON (ou cliquez sur Exemple pour une démo).
- Définissez facultativement un nom racine (par défaut
Root, nettoyé en identifiant valide). - Choisissez Éléments de tableau en union : Fusionner (par défaut — les objets fusionnent les clés, les primitives distinctes s’unissent) ou Union (émettre une vraie union des types d’éléments distincts).
- Activez Nullable → facultatif pour marquer optionnelles les propriétés dont le type inclut
null. - Les interfaces s’affichent en direct à droite, épinglées pendant que vous faites défiler l’entrée.
- Copiez le TypeScript, téléchargez-le en
types.ts, ou copiez le lien de partage pour reproduire exactement cette vue.
Exemples
Déduire une interface d’un objet imbriqué
Entrée :
{ "id": 7, "name": "CosmoDev", "tags": ["json", "ts"], "meta": { "version": 2 } }
Sortie :
interface Root {
id: number;
name: string;
tags: string[];
meta: RootMeta;
}
interface RootMeta {
version: number;
}
Les tableaux hétérogènes fusionnent en un élément union
Entrée : { "xs": [1, "a"] } → propriété xs: (number | string)[].
Les clés en mots réservés sont quotées
Entrée : { "class": "x", "default": 1 } → "class": string; "default": number;.
Bon à savoir
- Partageable : votre entrée et vos options sont encodées dans l’URL — un lien reproduit exactement la sortie.
- Privé : toute l’inférence se passe en local — sûr pour les secrets et les identifiants.
- Outils liés : JSON Formatter, JSON Validator,
Base64Base64An encoding representing binary data as 64 safe ASCII characters, so it survives transport through text-only channels. It encodes — it does not encrypt.
.