Cloudflare's tsrs Claims 8x Over TypeScript 7.0, With the Typical Case Unpublished
Software / news
Cloudflare's tsrs Claims 8x Over TypeScript 7.0, With the Typical Case Unpublished
The Rust port is Apache-2.0, experimental and installable today. Its speedup is an 'up to' figure, and diagnostics still print in a different order.

Cloudflare published tsrs on October 20, an experimental Rust port of the TypeScript compiler that it says checks types up to 8x faster than TypeScript 7.0 and uses about 70% less memory.
The figures come from Cloudflare's announcement and are vendor-supplied. They compare the two compilers at the same number of type-check workers, and the post points to a bench directory in the repository for the method.

What tsrs is, and what it is not
tsrs is installed with npm install tsrs and run with npx tsrs. Cloudflare built it with VoidZero and Max Schwenk of Owner.com, and it is incubated inside the Oxc JavaScript toolchain, according to the repository README. The README describes it as a drop-in replacement for the TypeScript 7 compiler and language server, and it is licensed Apache-2.0.
The post says plainly that this is not a fork. Cloudflare wrote that "we are not forking TypeScript" and that "the TypeScript team should remain solely responsible for deciding what that looks like." Language design stays with Microsoft's team; tsrs is meant to follow it.
The numbers, and the missing one
Two speedups appear in the text. TypeScript 7.1 beta is up to 2.5x faster than 7.0, and Cloudflare says some of that gain came from optimizations found while building tsrs.
- tsrs (same worker count)8 x
- TypeScript 7.1 beta2.5 x
Source: Cloudflare Blog, 2026-10-20, accessed 2026-10-20
Both are "up to" figures. The post charts a third configuration, an adaptive setup that picks settings by machine type and uses more memory, but gives no number for it in the text. The README chart covers seven projects at 1, 2, 4 and 8 checker threads without printing multipliers either, so a reader has to run bench to learn the typical case rather than the best one.
| Claim | Where it appears | Status |
|---|---|---|
| Up to 8x faster than TypeScript 7.0 | Cloudflare post | Vendor-supplied |
| About 70% less memory | Cloudflare post | Vendor-supplied |
| Stable release aimed at TypeScript 7.1 | README | Not yet shipped |
What does not match yet
Both documents list gaps. Diagnostics can print in a different order than the TypeScript compiler prints them, because parsing, resolution and checking run in parallel. The README says --init and --showConfig are unsupported. Cloudflare wrote that it aims "to reduce those differences to a minimum by the time we publish a stable release."
The README gives no conformance pass rate. It states a goal of 100% conformance and says the maintainers have "yet to find a correctness bug" while testing on existing projects, which is a statement about what they found, not a count of what they ran.
For a team with a CI step that diffs compiler output, ordering differences are the first thing to hit. For a team that only fails builds on error counts, they may never matter.
How it stays in step with TypeScript
A port that trails upstream becomes a different language. Cloudflare says it will use agent-assisted syncing with the TypeScript codebase, the same approach it describes using for Vinext, and will send performance improvements back to the TypeScript Go codebase. The post gives the argument that frontier models now make large ports feasible in days. Agent tooling of this kind has its own limits, covered in our look at Orca's six tmux limits and at OpenCode's security policy.
The repository has 621 stars, 1,796 commits on main, 6 open issues and 7 open pull requests as of this writing. The pull requests are closed to outside contributors, so bug reports are the only way in.
Next on Cloudflare's list is merging tsrs with tsc-rs, a project it credits to Theo Browne, into one package with language-server support. No date is given for that or for the stable release.
Sources
More in Software
- 01OpenBSD 8.0 Drops Loongson, Rebases Graphics on Linux 6.18 and Ships OpenSSH 10.6The 61st release lifts amd64 kernel address space to 512G and carries an SSH compression change that can slow transfers.
- 02Jepsen Found Orkes Conductor Marking Workflows Complete That Never RanNine findings across versions 5.3.2 to 5.5.0-rc2. Orkes, which funded the test, says seven are closed; Jepsen lists two as still under investigation.
- 03Futhark Fixes a Ten-Year-Old INT_MIN Division Bug and Pays 2.3x on One GPU BenchmarkThe generated C divided the lowest 32-bit integer by -1, which C leaves undefined. The guard adds a branch to every signed division.
- 04Orca Gains 1,590 Stars in a Day and Answers Three of crystl's Six tmux Limits, With 4,303 Open PRsThe MIT-licensed worktree app for coding agents has 98,318 stars and 4,306 open issues; its README addresses three of the six tmux limits crystl lists.