Skip to content

TypeScript 7 and Project Corsa: The Complete Guide

TypeScript 7 (Project Corsa) rewrites the compiler in Go for 10x faster builds. GA landed July 2026. What changed, who should upgrade, and how to start.

· · 5 min read
Colorful syntax-highlighted TypeScript source code on a dark editor screen

Quick Take

TypeScript 7, codenamed Project Corsa, is a full rewrite of the compiler and language service in Go. It reached general availability on July 8, 2026, and delivers 8x to 12x faster builds with no change to the type system you already know.

Quick take: TypeScript 7 (Project Corsa) is the same language on a native Go compiler. It went GA on July 8, 2026, ships as the standard tsc, and runs 8x to 12x faster. The type system is unchanged, so most React and Node projects upgrade in a day.

TypeScript 7, codenamed Project Corsa, is a ground-up rewrite of the TypeScript compiler and language service in Go. It reached general availability on July 8, 2026. The headline is raw speed: Microsoft reports 8x to 12x faster full builds, and type-checking the VS Code codebase fell from 125.7 seconds to 10.6 seconds, an 11.9x speedup (TypeScript Blog, July 2026). The type system itself is unchanged, so your generics, conditional types, and strict-mode config all behave the same. The native compiler ships as the ordinary tsc binary, installed with npm install -D typescript. There is no separate tsgo command at GA, that name only applied to the preview package. The one real catch: frameworks that need a programmatic compiler API, Vue, Svelte, Astro, and Angular template checking, cannot fully use TypeScript 7 yet. React and Node projects can upgrade today.

I've spent the last three months running the preview across production codebases, and the speed genuinely changes how you work. This guide is the hub for everything TypeScript 7 on Coding Dunia. Start here, then follow the links into the deep dives.

What Is Project Corsa?

Microsoft announced the native port in March 2025. The plan was bold: take the entire TypeScript compiler, roughly 100,000 lines of carefully tuned code, and port it to Go while preserving exact behavioral parity. The old JavaScript-based compiler got the nickname Strada. The new Go one got Corsa.

Why Go and not Rust? Ryan Cavanaugh and Anders Hejlsberg explained that Go maps cleanly onto the compiler's existing structure: heavy use of graphs, shared mutable state, and functions that pass data around by reference. A Rust rewrite would have forced a redesign of that core and added years to the timeline. Go let the team port the logic almost function for function, which is how they hit behavioral parity instead of shipping a subtly different type-checker.

Here's my opinion after using it: choosing portability over the "cooler" language was the right engineering call, and it's why Corsa actually shipped in 2026 instead of 2029.

How Much Faster Is TypeScript 7, Really?

The numbers are hard to overstate. At default settings, type-checking VS Code went from 125.7 seconds to 10.6 seconds. Opening a file with errors dropped from 17.5 seconds to under 1.3 seconds, over 13x faster, which is the difference you actually feel while editing. Memory usage fell between 6 and 26 percent depending on the codebase.

Do those gains hold on a normal-sized app, not just a 1.5 million line monster? Mostly, yes. On a 40,000 line React app I maintain, cold type-check went from 14 seconds to about 1.6 seconds. I break down the methodology and results across small, medium, and large repos in the TypeScript 7 benchmarks deep dive.

A green sports car blurring past on a race track
Photo by Milan Csizmadia on Unsplash

What Actually Changed?

Less than you'd fear. The compiler is new; the language is not. Three things are worth knowing up front:

  • The binary is tsc, still. You install typescript and get the Go compiler. The tsgo name lived in the @typescript/native-preview package, which pulled over 8.5 million weekly downloads before GA and is now winding down in favor of typescript@next for nightlies.
  • TypeScript 6 is the bridge. TS 6 was the final JavaScript-based release. Every option it deprecated becomes a hard error in TS 7. That's why the smart migration path runs through 6 first, a point I unpack in TypeScript 6 vs 7.
  • A handful of legacy features are gone. ES5 output, AMD/UMD/SystemJS modules, and classic module resolution were all removed. The full before-and-after is in the step-by-step migration guide.

Should You Upgrade Now?

Ask one question first: what does your framework need from the compiler?

If you're on React, Next.js, Node, or plain TypeScript, upgrade this week. These setups only ask the compiler to type-check and emit, which is exactly what Corsa does at full speed. If you're on Vue, Svelte, Astro, or you rely on Angular template checking, hold off on flipping the default. Those tools hook into a programmatic API that TypeScript 7 hasn't stabilized, so they can't drive the native compiler yet. I cover the workarounds and the current support matrix in TypeScript 7 framework support.

A pack of race cars rounding a floodlit night track before a crowded grandstand
Photo by Getty Images on Unsplash

How Do You Actually Migrate?

The short version: upgrade to TS 6, fix every deprecation warning, then bump to TS 7. For most single-package React or Node apps that's a one-day job. The details differ by project shape, so I've split them out:

Why This Matters for Your Codebase

A 10x faster type-check isn't just a nicer number on a benchmark chart. When tsc finishes in two seconds instead of twenty, you start running it on every save, your CI feedback loop tightens, and reviewers stop waiting on green checks. Fast tools change habits. That's the real story of Project Corsa, and it's why this is the biggest shift in the TypeScript toolchain since the language shipped in 2012.

Frequently Asked Questions

What is Project Corsa in TypeScript?
Project Corsa was Microsoft's internal codename for the native port of the TypeScript compiler and language service from JavaScript to Go. It shipped publicly as TypeScript 7.0. The old JavaScript-based codebase was nicknamed Strada.
Is TypeScript 7 released yet?
Yes. TypeScript 7.0 reached general availability on July 8, 2026, after a beta and a release candidate earlier that summer. Running npm install -D typescript now installs 7.0 from the latest tag.
Does TypeScript 7 use a new binary called tsgo?
No, not at GA. The native Go compiler ships as the standard tsc binary. The name tsgo only referred to the pre-release @typescript/native-preview package. After GA, nightly builds move to the typescript package under the next tag.
How much faster is TypeScript 7?
Microsoft reports 8x to 12x faster full builds. Type-checking the VS Code codebase dropped from 125.7 seconds on TypeScript 6 to 10.6 seconds on TypeScript 7, an 11.9x speedup, with memory usage down 6 to 26 percent.
Can I use TypeScript 7 with Vue, Svelte, or Astro?
Not fully at GA. Vue, Svelte, Astro, MDX, and Angular template type-checking depend on a programmatic compiler API that TypeScript 7 has not stabilized yet. React, Next.js, and plain TypeScript work today. Non-React frameworks can still type-check by staying on TypeScript 6 for now.