<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/typescript-7-0-rewrote-its-compiler-in-go-builds-are-now-10x-faster--x8yxxxlve" -->

---
title: TypeScript 7.0 Rewrote Its Compiler in Go. Builds Are...
description: TypeScript 7.0, released July 9 2026, rewrites the compiler from TypeScript/JavaScript into Go, delivering roughly 10x faster build times. The VS Code codebase...
canonical: https://daily.dev/posts/typescript-7-0-rewrote-its-compiler-in-go-builds-are-now-10x-faster--x8yxxxlve
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: TypeScript 7.0 Rewrote Its Compiler in Go. Builds Are Now 10x Faster. | daily.dev
og:description: TypeScript 7.0, released July 9 2026, rewrites the compiler from TypeScript/JavaScript into Go, delivering roughly 10x faster build times. The VS Code codebase...
og:url: https://daily.dev/posts/typescript-7-0-rewrote-its-compiler-in-go-builds-are-now-10x-faster--x8yxxxlve
og:image: https://api.daily.dev/og/posts/x8yxxxLve.png
og:image:alt: TypeScript 7.0 Rewrote Its Compiler in Go. Builds Are Now 10x Faster.
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# TypeScript 7.0 Rewrote Its Compiler in Go. Builds Are Now 10x Faster.

**[Medium](https://daily.dev/sources/medium_js)** · 9 min read · 5 upvotes · 0 comments

## Summary

TypeScript 7.0, released July 9 2026, rewrites the compiler from TypeScript/JavaScript into Go, delivering roughly 10x faster build times. The VS Code codebase (2.3M lines) dropped from 125 seconds to 10 seconds. The speedup comes from three Go advantages over the JS runtime: shared-memory parallelism via goroutines (no postMessage copying), native machine code execution without V8 JIT overhead, and microsecond-level GC pauses. Parsing and emit are now embarrassingly parallel per-file, while type checking uses multiple workers sharing one type table. Watch mode was also overhauled by porting Parcel's C++ file watcher to Go, eliminating polling entirely. Upgrading is a simple npm install, though breaking changes from TS 6 defaults (types array now empty, es5 target removed) require tsconfig updates. The piece also argues that Go, not Rust, was the right choice here because the bottleneck was parallelism rather than raw single-threaded speed.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://medium.com/@coolercoder/typescript-7-0-rewrote-its-compiler-in-go-builds-are-now-10x-faster-e821ddb56547>

## Questions this post answers

### Why did the TypeScript team rewrite the compiler in Go instead of Rust?

The bottleneck was parallelism, not raw single-threaded speed, and Go's goroutines plus native shared-memory access let multiple workers read one shared type table and symbol table without copying data across threads. Rust's borrow checker would complicate that shared access, and Go also offered faster iteration and a gentler learning curve for a team already fluent in JS/TS, even though Rust might have squeezed out slightly more raw speed (an estimated 12x versus Go's 10x).

_Weighing Go against Rust for a performance-critical rewrite is exactly the kind of decision developers track on daily.dev._

### What breaking changes should I expect when upgrading to TypeScript 7?

The default 'types' compiler option changes from auto-loading every @types/* package to an empty list, so globals like node, jest, or bun must now be declared explicitly in tsconfig.json. Also, target: 'es5' becomes a hard error (along with downlevelIteration), requiring a bump to es2015 or higher. Running npx tsc@7 --noEmit surfaces these errors before a full migration.

_Tracking breaking config changes like these before an upgrade is easier with daily.dev alongside your TypeScript migration._

### How much faster are TypeScript builds after the Go compiler rewrite in TypeScript 7.0?

Builds are roughly 10x faster overall, with VS Code's 2.3-million-line codebase dropping from 125 seconds to about 10 seconds, a 11.9x speedup. Smaller projects see gains closer to 7.7x. The improvement comes from parallelized parsing and emit, shared-memory parallel type checking via goroutines, native machine code execution with no V8 JIT warmup, and microsecond-scale garbage collection pauses instead of V8's millisecond pauses.

_Developers evaluating real build-speed gains before committing to an upgrade often follow releases like this on daily.dev._

## Similar posts on daily.dev

- [Microsoft Share Update on TypeScript 7](https://daily.dev/posts/microsoft-share-update-on-typescript-7-iooeziqrn) · InfoQ · 18 upvotes · 0 comments
- [Announcing TypeScript 7.0 RC](https://daily.dev/posts/announcing-typescript-7-0-rc-dx1ho4imo) · Typescript · 88 upvotes · 10 comments

---

Tags: [#typescript](https://daily.dev/tags/typescript), [#golang](https://daily.dev/tags/golang), [#compiler](https://daily.dev/tags/compiler)

[View this post on daily.dev](https://daily.dev/posts/typescript-7-0-rewrote-its-compiler-in-go-builds-are-now-10x-faster--x8yxxxlve)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"TypeScript 7.0 Rewrote Its Compiler in Go. Builds Are Now 10x Faster.","url":"https://daily.dev/posts/typescript-7-0-rewrote-its-compiler-in-go-builds-are-now-10x-faster--x8yxxxlve","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/typescript-7-0-rewrote-its-compiler-in-go-builds-are-now-10x-faster--x8yxxxlve"},"datePublished":"2026-07-26T02:59:39.627Z","dateModified":"2026-09-14T07:15:49.258Z","description":"TypeScript 7.0, released July 9 2026, rewrites the compiler from TypeScript/JavaScript into Go, delivering roughly 10x faster build times. The VS Code codebase...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/b69cb6a83498882f4dede86a4041d700?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/b69cb6a83498882f4dede86a4041d700?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Medium","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Medium","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/medium","url":"https://daily.dev/sources/medium_js"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/typescript-7-0-rewrote-its-compiler-in-go-builds-are-now-10x-faster--x8yxxxlve","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":5},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"typescript,golang,compiler","timeRequired":"PT9M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Medium","item":"https://daily.dev/sources/medium_js"},{"@type":"ListItem","position":3,"name":"TypeScript 7.0 Rewrote Its Compiler in Go. Builds Are Now 10x Faster."}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/typescript-7-0-rewrote-its-compiler-in-go-builds-are-now-10x-faster--x8yxxxlve#faq","mainEntity":[{"@type":"Question","name":"Why did the TypeScript team rewrite the compiler in Go instead of Rust?","acceptedAnswer":{"@type":"Answer","text":"The bottleneck was parallelism, not raw single-threaded speed, and Go's goroutines plus native shared-memory access let multiple workers read one shared type table and symbol table without copying data across threads. Rust's borrow checker would complicate that shared access, and Go also offered faster iteration and a gentler learning curve for a team already fluent in JS/TS, even though Rust might have squeezed out slightly more raw speed (an estimated 12x versus Go's 10x). Weighing Go against Rust for a performance-critical rewrite is exactly the kind of decision developers track on daily.dev."}},{"@type":"Question","name":"What breaking changes should I expect when upgrading to TypeScript 7?","acceptedAnswer":{"@type":"Answer","text":"The default 'types' compiler option changes from auto-loading every @types/* package to an empty list, so globals like node, jest, or bun must now be declared explicitly in tsconfig.json. Also, target: 'es5' becomes a hard error (along with downlevelIteration), requiring a bump to es2015 or higher. Running npx tsc@7 --noEmit surfaces these errors before a full migration. Tracking breaking config changes like these before an upgrade is easier with daily.dev alongside your TypeScript migration."}},{"@type":"Question","name":"How much faster are TypeScript builds after the Go compiler rewrite in TypeScript 7.0?","acceptedAnswer":{"@type":"Answer","text":"Builds are roughly 10x faster overall, with VS Code's 2.3-million-line codebase dropping from 125 seconds to about 10 seconds, a 11.9x speedup. Smaller projects see gains closer to 7.7x. The improvement comes from parallelized parsing and emit, shared-memory parallel type checking via goroutines, native machine code execution with no V8 JIT warmup, and microsecond-scale garbage collection pauses instead of V8's millisecond pauses. Developers evaluating real build-speed gains before committing to an upgrade often follow releases like this on daily.dev."}}]}
```

