TypeScript 5.9 · syntax only

TypeScript playground

Transpile TS and TSX with the compiler's own emitter, and read syntax errors with the line they are on.

0 characters

The compiler runs in this tab. Source code never leaves the page and nothing is stored.

Short answer: paste TS or TSX, pick a target, read the JavaScript. A syntax error stops the compile and names the line; type errors are out of scope here.

Transpile, not type-check

This runs ts.transpileModule — the emitter behind every bundler’s TypeScript step. It is fast and it is faithful for syntax, but it never looks at other files, so it cannot know whether your types line up. That is why the page reports syntax diagnostics only, instead of showing a green tick that would mean nothing.

What the settings change

Want to check a JSON payload instead? TheJSON Schema validator reports the exact failing path.

TypeScript questions

Does this type-check my code?

No, and the page says so before you paste anything. It transpiles each file with tsc’s own parser and reports syntax diagnostics. Full type checking needs the standard library declaration files (several megabytes) in a virtual filesystem — a different job from a quick compile.

What does it handle then?

Everything the emitter does: type annotations, interfaces, enums, decorators, generics, satisfies, optional chaining, JSX/TSX, and the target and module settings you pick. The output is what a build would produce for that file in isolation.

Why is isolated compilation mentioned?

Because each file is compiled on its own, exactly like a bundler’s transpile step. That means const enums and type-only imports behave the way they do under isolatedModules — which is what most build pipelines actually run.

Is my code uploaded?

No. The compiler runs in this tab. Source code is the most sensitive thing a developer pastes into a tool, so nothing is sent anywhere and nothing is stored.

Related tools