Multi-JSON inputs
Paste as many JSON payloads as you need — GET responses, POST bodies, PUT requests — all at once.
TypeLoom analyzes all your API payloads simultaneously — GET responses, POST bodies, PUT requests — and outputs clean, deduplicated interfaces with automatic extends detection. In real time.
Free forever · No login · No install · Runs in your browser
Only handle one JSON at a time. Paste GET response → get flat interface. Paste POST body → different file, zero awareness of shared structures.
You end up with 5 duplicate { id, name } interfaces and no extends anywhere.
Accepts all your payloads at once. Finds that Type should extendsFrom. Detects that PokemonResponse extends CreatePokemonRequest. Emits one clean, ordered file.
Built specifically for the real-world workflow of Angular and NestJS developers.
Paste as many JSON payloads as you need — GET responses, POST bodies, PUT requests — all at once.
Automatically detects when one interface is a superset of another and emits the correct extends relationship.
Identical nested structures across all your inputs are merged into a single shared interface with a usage comment.
Output updates as you type. No submit button, no waiting — built with Angular Signals and computed().
Base interfaces are always emitted before the ones that depend on them. Ready to paste, zero manual reordering.
No account. No API key. No limits. Runs entirely in your browser. Support it with a Ko-fi if it saves you time.
Three steps to production-ready TypeScript interfaces.
Add one card per endpoint — GET response, POST body, anything. Give each one a meaningful interface name.
The engine walks all inputs, extracts nested objects, computes signatures, and resolves shared structures and inheritance.
Hit Copy, paste into your Angular service or NestJS DTO file. Rename shared types if needed — you're done.
TypeLoom is completely free — no account, no limits, no API key. If it saves you time, a coffee goes a long way toward keeping it running and improving.