TypeScript to JavaScript Transpiler

Transpile TypeScript and JSX to plain JavaScript in the browser.

🔒 Client · Offline
Processed locally
This tool runs in the browser.

This tool removes the type annotations. It does not check the types. Code with a type error transpiles without a warning.

Compile changes optional chaining, nullish coalescing, class fields, numeric separators, and optional catch binding. Arrow functions, async functions, and classes stay as they are.
Select a TSX or a JSX loader to use this option.
Only the automatic JSX runtime reads this option.

About the transpiler

Sucrase removes the TypeScript types and converts the JSX in your browser. It loads only when you run the tool.

Transpilation removes the type annotations. It does not check the types. The tool accepts code that the TypeScript compiler rejects, and it gives no type error. Run tsc --noEmit to check the types.

Sucrase has no ECMAScript target option. The output keeps the syntax that you write. The New syntax option covers five features only: optional chaining, nullish coalescing, class fields, numeric separators, and optional catch binding. Use a full compiler for an old engine.

The automatic JSX runtime writes the development calls. It imports jsxDEV from <import source>/jsx-dev-runtime. The classic runtime writes React.createElement.