Back to blog

TypeScript 7: The Native Go Compiler is Ready for Daily Use

Hello HaWkers, Microsoft has just announced a historic milestone for the TypeScript ecosystem: the native compiler written in Go is officially stable and ready for daily use. This marks the end of an era and the beginning of a revolution in how we work with TypeScript.

But what does this mean in practice? Let's dive into the technical details and understand why this change is so significant.

What is Happening With TypeScript?

Microsoft is porting the entire TypeScript compiler and language service from JavaScript/TypeScript to native Go code. TypeScript 6.0 will be the last major version built on the current JavaScript codebase (internally called "Strada").

Transition Timeline

Compiler evolution:

  • TypeScript 1.0-5.x: JavaScript/TypeScript compiler
  • TypeScript 6.0: Last JavaScript version (2025)
  • TypeScript 7.0: First native Go compiler (2026)

Current status (December 2025):

  • Native compiler: Stable for daily use
  • Type checking: Functional
  • Auto-imports: Reimplemented and working
  • Find-all-references: Available
  • Rename: Operational
  • Editor support: VS Code and others

Why Migrate to Go?

The decision to rewrite TypeScript in Go was based on several technical factors:

Performance Gains

Official Microsoft benchmarks:

Operation tsc JavaScript tsc Go Improvement
Initial compilation 45s 4.5s 10x faster
Incremental check 8s 0.8s 10x faster
Find references 3s 300ms 10x faster
Auto-complete 500ms 50ms 10x faster
Memory used 4GB 800MB 5x less memory

Large projects (monorepos):

  • Build time: From 5 minutes to 30 seconds
  • CI/CD: 80% reduction in pipeline time
  • Developer experience: Instant feedback

Technical Advantages of Go

Why Go was chosen:

  • Compilation to native binary
  • Excellent memory management
  • Native concurrency with goroutines
  • Cross-platform portability
  • Easy distribution (single binary)

How to Test Today

You can already try the native compiler. Here's how to set it up:

# Install the native TypeScript preview version
npm install -g typescript@native

# Check the installed version
tsc --version
# Output: Version 7.0.0-dev.native

# Compile a project
tsc --project tsconfig.json

# Use in VS Code (add to settings.json)
{
  "typescript.tsserver.useSeparateServer": true,
  "typescript.tsdk.native": true
}

Configuration for Existing Projects

// tsconfig.json - compatible with both versions
{
  "compilerOptions": {
    "target": "ES2022",
    "module": "NodeNext",
    "moduleResolution": "NodeNext",
    "strict": true,
    "esModuleInterop": true,
    "skipLibCheck": true,
    "forceConsistentCasingInFileNames": true,
    "outDir": "./dist",
    "rootDir": "./src"
  },
  "include": ["src/**/*"],
  "exclude": ["node_modules", "dist"]
}

Impact For Developers

This change will have significant effects on the daily work of TypeScript developers:

Immediate Benefits

For local development:

  • Almost instant hot reload
  • Autocomplete without lag
  • Fluid code navigation
  • Less editor memory usage

For CI/CD:

  • Builds up to 10x faster
  • Lower infrastructure costs
  • More efficient pipelines
  • Lower resource consumption

For monorepos:

  • Type checking in seconds
  • More responsive watch mode
  • Better experience in large projects

Experience Comparison

// Example project with 10,000 TypeScript files

// BEFORE (JavaScript tsc)
// - Initial compilation: 2-3 minutes
// - Incremental check: 15-30 seconds
// - Autocomplete: 500ms-1s delay
// - Memory: 4-6GB

// AFTER (Native Go tsc)
// - Initial compilation: 15-20 seconds
// - Incremental check: 1-2 seconds
// - Autocomplete: <50ms delay
// - Memory: 800MB-1.2GB

Compatibility and Migration

Microsoft is working to ensure full compatibility:

What Changes

Invisible changes:

  • Internal compilation engine
  • Language server architecture
  • Memory management

What stays the same:

  • TypeScript syntax
  • tsconfig.json
  • Compiler APIs
  • Existing plugins

Migration Plan

Phase 1 (Current):

  • Preview available for early adopters
  • Community feedback
  • Critical bug fixes

Phase 2 (Q1 2026):

  • TypeScript 7.0 release candidate
  • Migration of large open source projects
  • Complete documentation

Phase 3 (Q2 2026):

  • Official TypeScript 7.0 launch
  • TypeScript 6.x enters maintenance mode
  • Native Go becomes the default

What This Means For the Ecosystem

The move to native Go will have impacts beyond TypeScript:

Affected Tools

Need updates:

  • Build plugins (Webpack, Vite, esbuild)
  • Linters and formatters
  • IDEs and editors
  • Static analysis tools

Already compatible:

  • VS Code (official support)
  • Prettier (no changes needed)
  • ESLint (TypeScript configuration)

Native Tools Trend

TypeScript joins a growing trend of JavaScript tools being rewritten in compiled languages:

Tool Original Rewritten in Gain
esbuild - Go 100x faster than Webpack
SWC - Rust 20x faster than Babel
Turbopack - Rust 10x faster than Webpack
Rome/Biome - Rust 35x faster than ESLint
TypeScript 7 JavaScript Go 10x faster
OxLint - Rust 100x faster than ESLint

How to Prepare

To make the most of this change:

Recommended Actions

Now:

  1. Test the preview on personal projects
  2. Identify dependencies that may be affected
  3. Report bugs and feedback on GitHub

Next quarter:

  1. Evaluate impact on production projects
  2. Update build tools
  3. Train the team on changes

2026:

  1. Officially migrate to TypeScript 7.0
  2. Leverage performance gains
  3. Update CI/CD pipelines

Conclusion

TypeScript 7 with the native Go compiler represents one of the biggest technical evolutions of the language since its creation. With performance gains of up to 10x, the development experience with TypeScript will become dramatically better.

For us developers, this means faster builds, more responsive editors, and less time waiting for the compiler. It's a change that benefits projects of all sizes.

If you want to follow other important changes in the JavaScript ecosystem, I recommend checking out: Node.js Security Updates: Critical Vulnerabilities December 2025 where we cover the most recent security updates.

Let's go! 🦅

Comments (0)

This article has no comments yet 😢. Be the first! 🚀🦅

Add comments