Paste a JSON payload, get TypeScript interfaces inferred instantly — including nullability, arrays, and nested shapes. Saves the five-minute typing tax on every new API integration.
JSON input
TypeScript output
export interface User {
id: string;
email: string;
isAdmin: boolean;
createdAt: string;
preferences: Preferences;
projects: Project[];
}
export interface Preferences {
theme: string;
newsletter: null;
}
export interface Project {
id: string;
name: string;
starred: boolean;
}
Mixed arrays become unions. Missing fields across array items become optional. Empty arrays become unknown[] — no silent any.
Each nested object becomes its own named interface, so the output reads like something you'd write by hand — copy-paste, ship.
Everything runs in your browser. Paste a payload from a production API — it never crosses the wire.