Microsoft shipped TypeScript 7.0 this summer after starting Project Corsa in March 2025. The compiler had spent a decade written in TypeScript and running on Node. Its implementation now runs in Go. Microsoft reports 8x to 12x faster full builds on large, real-world projects. Project loading, completions, find-all-references and editor diagnostics also improve. Types, tsconfig files and error messages remain unchanged.

terminal
npm install -D typescript@latest
time npx tsc --noEmit

Early measurements covered VS Code with 1.5M lines, where build time fell from 77.8s to 7.5s for a 10.4x gain. Playwright with 356K lines improved from 11.1s to 1.1s, or 10.1x. TypeORM with 270K lines went from 17.5s to 1.3s, or 13.5x. date-fns with 104K lines went from 6.5s to 0.7s, or 9.5x. The 12x figure marks the upper end of Microsoft’s range, and VS Code was just above 10x in these early runs. Results depend on project size and CPU core count. Larger projects on machines with more cores tend to approach the upper end.

Go was selected for a compatibility port. The team traced the existing code file by file to preserve behavior, including existing bugs. The compiler’s object graph links nodes to parents and children, and symbols to declarations. Go can represent those relationships directly with pointers and slices. Rust could model them with Rc<RefCell<Node>> and Weak references, but that path would have required a different compiler design. Go’s garbage collector also fits the memory assumptions of the JavaScript implementation. Goroutines and shared memory provide the parallel execution used for the remaining speed gains.

TypeScript 6 ran parse, bind, check and emit in one Node thread. TypeScript 7 distributes parsing and checking across multiple lanes in shared memory before emit. Native execution accounts for part of the improvement. Parallelism supplies the rest.

The upgrade uses npm install -D typescript@latest. Developers can compare time npx tsc --noEmit before and after the change.

TypeScript 7.0 has no stable programmatic API. Microsoft plans that API for 7.1. Tools that call the compiler directly cannot use the new implementation yet. The affected ecosystem includes typescript-eslint and the tooling behind Vue, Svelte, Astro, MDX and Angular templates, which remain on TypeScript 6 for now. Older deprecations now produce hard errors, and strict mode is enabled by default.