Back to blog

TypeScript 6 and the Go Rewrite: How the Compiler Will Become 10x Faster

Hello HaWkers, if you work with TypeScript on a daily basis, you have probably experienced that annoying delay when opening a large project in VS Code. The Language Server takes its time loading, IntelliSense freezes for a few seconds, and builds seem to take forever in monorepos. Well, Microsoft is about to change that in a dramatic way.

The release of TypeScript 6 beta in February 2026 brought significant changes, but what is really shaking up the community is what comes next: TypeScript 7, with the compiler completely rewritten in Go, promising up to 10x speed improvements.

What Changes in TypeScript 6

TypeScript 6 is what Microsoft calls a "transition release." It sets the stage for the big revolution of TypeScript 7, but already introduces meaningful changes that affect how you write code today.

Strict Mode Is Now the Default

The most impactful change in TypeScript 6 is that strict mode is now enabled by default. This means that new projects created with tsc --init will come with all rigorous checks active out of the box.

// tsconfig.json in TypeScript 6
// strict: true is now the default - no need to declare it
{
  "compilerOptions": {
    "target": "ES2024",
    "module": "NodeNext",
    "outDir": "./dist"
    // strict: true is implicit
  }
}

In practice, this means code like the following will no longer compile without errors in new projects:

// Before strict default, this would pass without errors
function processUser(user) {
  // Parameter 'user' implicitly has an 'any' type
  return user.name.toUpperCase();
}

// With strict default, you need explicit types
interface User {
  name: string;
  email: string;
  role: 'admin' | 'user';
}

function processUser(user: User): string {
  return user.name.toUpperCase();
}

If you already use strict mode in your projects, nothing changes. But for teams that have not adopted it yet, this transition may require adjustments. TypeScript 6 allows you to use "ignoreDeprecations": "6.0" to temporarily keep the old behavior, but these options will be removed in TypeScript 7.

The Big Revolution: TypeScript 7 in Go

Here is what is truly causing excitement in the community. Anders Hejlsberg, the creator of TypeScript, announced that the TypeScript 7 compiler is being rewritten from scratch in Go. And the preliminary numbers are impressive.

Preview Benchmarks

Microsoft shared data from the preview running in Visual Studio 2026 Insiders:

  • Project loading time: approximately 8x reduction
  • Type checking: up to 10x faster
  • Memory usage: significant reduction for large projects
  • Editor experience: IntelliSense and autocomplete are nearly instantaneous

To put this in perspective, a monorepo that took 45 seconds to load in TypeScript 5 now loads in under 6 seconds with the native compiler.

Why Go and Not Rust?

This question dominated forums and social media. The choice of Go over Rust surprised many, since Rust is often seen as the "natural" choice for high-performance tools. Anders Hejlsberg explained that Go was chosen for several practical reasons:

  • Garbage collector: the TypeScript compiler relies heavily on GC, and rewriting for Rust's ownership model would be extremely complex
  • Team familiarity: the TypeScript team was able to ramp up on Go more quickly
  • Native concurrency: goroutines make it easier to parallelize type checking
  • Simplicity: Go allows a more accessible codebase for contributors
// Simplified example of how parallelization works in the new compiler
// Each file can be type-checked in a separate goroutine

func checkFiles(files []SourceFile) []Diagnostic {
    results := make(chan []Diagnostic, len(files))

    for _, file := range files {
        go func(f SourceFile) {
            diagnostics := typeCheck(f)
            results <- diagnostics
        }(file)
    }

    var allDiagnostics []Diagnostic
    for range files {
        diags := <-results
        allDiagnostics = append(allDiagnostics, diags...)
    }

    return allDiagnostics
}

What This Means For Your Project

Migrating from TypeScript 5 to 6

If you are planning to migrate, here are the key changes to consider:

// 1. Deprecated options in TS6 that will be removed in TS7
// If you use any of these, plan to remove them:

{
  "compilerOptions": {
    // Deprecated - migrate before TS7
    "noImplicitAny": true,        // Now part of strict default
    "noImplicitThis": true,       // Now part of strict default
    "strictNullChecks": true,     // Now part of strict default
    "strictFunctionTypes": true,  // Now part of strict default

    // Use this temporarily if needed
    "ignoreDeprecations": "6.0"
  }
}

Impact on Tools and Editors

The Go rewrite has direct implications for the ecosystem:

What improves immediately:

  • VS Code with native Language Server will be dramatically faster
  • CI/CD builds could be up to 10x faster
  • Large monorepos will finally have a smooth experience
  • Hot reload in Next.js, Nuxt, and similar frameworks will be nearly instant

What needs attention:

  • Compiler plugins written in JavaScript will need to be adapted
  • Tools that depend on the internal tsc API may break
  • Custom transformers will need to be rewritten

Compatibility

Microsoft has guaranteed that TypeScript 7 will be fully compatible in terms of type checking. The same code that compiles in TypeScript 5 will continue to compile in 7. The difference is purely in the internal compiler implementation.

// This code works identically in TS5, TS6, and TS7
type DeepPartial<T> = {
  [P in keyof T]?: T[P] extends object ? DeepPartial<T[P]> : T[P];
};

interface Config {
  database: {
    host: string;
    port: number;
    credentials: {
      user: string;
      password: string;
    };
  };
  cache: {
    ttl: number;
    maxSize: number;
  };
}

function updateConfig(current: Config, updates: DeepPartial<Config>): Config {
  return deepMerge(current, updates);
}

// The difference is that in TS7 this type checking
// happens up to 10x faster

Community Reaction

Daniel Roe, leader of the Nuxt core team, captured the general sentiment when he said that "TypeScript has won, not as a bundler, but as a language." And with the native Go compiler, the only remaining barrier to universal adoption - performance - is about to fall.

What Major Projects Are Saying

  • Node.js now supports TypeScript natively via type stripping from version 22.18.0
  • Deno has used TypeScript without configuration since its inception
  • Bun also offers native TypeScript support
  • Next.js, Nuxt, and Angular are already testing integrations with the Go compiler

Adoption Numbers

According to the State of JavaScript 2025 survey:

  • 95% of developers have used TypeScript at some point
  • 78% prefer TypeScript over plain JavaScript for new projects
  • 62% of companies require TypeScript in their job postings
  • Satisfaction with TypeScript remains above 90%

How to Prepare

If you want to be ready when TypeScript 7 arrives, here is a practical checklist:

Now (TypeScript 6 beta):

  • Enable strict mode on all projects that do not use it yet
  • Remove deprecated options from tsconfig.json
  • Test your projects with the --strict flag if you are not already using it

Next quarter (TypeScript 7 preview):

  • Test the native Go compiler on your projects
  • Check if custom plugins and transformers are compatible
  • Measure performance gains in your CI/CD

Second half of 2026 (TypeScript 7 stable):

  • Migrate to the native compiler
  • Update build pipelines
  • Leverage the performance to improve team DX

The Future of TypeScript

TypeScript is experiencing its most transformative moment since its launch. The combination of strict mode by default in TypeScript 6 with the Go rewrite in TypeScript 7 represents a dual evolution: safer code and faster tools.

For developers, the message is clear: TypeScript is no longer optional in the modern JavaScript ecosystem. And with performance no longer being a friction point, the last barriers to universal adoption are falling.

If you want to dive deeper into the JavaScript and TypeScript ecosystem, I recommend checking out another article: ECMAScript 2026: The New Features Coming to JavaScript where you will discover the new language features that perfectly complement TypeScript improvements.

Let's go! 🦅

📚 Want to Deepen Your JavaScript Knowledge?

This article covered the TypeScript 6 changes and the Go rewrite, but there is much more to explore in modern development.

Developers who invest in solid, structured knowledge tend to have more opportunities in the market.

Complete Study Material

If you want to master JavaScript from basics to advanced, I have prepared a complete guide:

Investment options:

  • 1x of $4.90 on card
  • or $4.90 at sight

👉 Learn About JavaScript Guide

💡 Material updated with industry best practices

Comments (0)

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

Add comments