Cloudflare and VoidZero Release tsrs, an AI-Generated Rust Port of TypeScript
Cloudflare and VoidZero have released tsrs, a Rust port of the TypeScript compiler incubated within the Oxc toolchain, with language design still owned by the TypeScript team. Cloudflare claims up to 8x faster type checking and roughly 70% less memory at equal worker counts, while an independent benchmark measured 5.3x speedup and 72% memory reduction with identical diagnostics. The port was produced by a Claude-driven agent using TypeScript's 15,197 conformance tests as the spec, and is open-sourced under Apache-2.0.
Full Report
tsrs is a Rust port of the TypeScript compiler, announced by Cloudflare and developed jointly with VoidZero and Max Schwenk of Owner.com. The project is incubated within the Oxc toolchain and developed in close collaboration with the TypeScript team. Cloudflare emphasizes that tsrs is not a fork of TypeScript, and language design remains entirely under the control of the TypeScript team.

Cloudflare claims that with the same number of type-checking worker threads, tsrs type-checks up to 8x faster with roughly 70% less memory usage. Rust also enables the project to compile to WebAssembly via @tsrs/wasm, allowing checks to run in the browser or on Workers without dragging a garbage collector into the final artifact the way a Go binary does.
Developers can try it by pointing it at their existing tsconfig:
npm install -D tsrs
npx tsrs -p . --noEmit
In a detailed technical write-up, Schwenk explains that he did not write any code himself; instead, he directed an agent built around Claude Opus 5.5 to complete a faithful port. The entire process used TypeScript's own 15,197 conformance test cases as the specification. In Owner's monorepo of 37,000 files, a check that previously took 19 GiB of memory and 80 seconds with TypeScript 7.0 now takes just 7 seconds.
One developer benchmarked both npm packages, measuring a 5.3x speedup and 72% less memory usage with tsrs, with identical diagnostics and byte-for-byte identical generated code. However, he found that tsrs exits with code 2 when type errors are present, whereas tsc returns 1 — a difference significant enough to silently break CI scripts. When using the newer TypeScript 7.1 beta instead of 7.0 as the baseline, ImportStatic's tests show the speedup shrinking to 2.7x. This also serves as a reminder that Cloudflare's claimed 8x speedup was measured against an older version.
Daniel Rosenwasser of the TypeScript team responded that the performance gains are "not just a result of the language choice," and that some of the optimizations found in tsrs have already been used to improve TypeScript 7.1, making it leaner.
Peter Steinberger said on X:
I migrated to tsrs over the weekend. It's a drop-in replacement, and OC runs about 5x faster. It's a bit surreal — Microsoft spent two years with a team rewriting the TypeScript compiler in Go, and now you can just let an agent loose on it and get a clearly better version in a few weeks.
Others are more cautious, questioning whether a model based on Arena allocation that never frees memory is reasonable.
tsrs coexists with Microsoft's Go-based compiler tsgo and another Rust port, tsc-rs, by Theo Browne. Rather than positioning these projects as competitors, Cloudflare merged tsc-rs with tsrs into a unified package, with plans to add language server and content mapper support.
Currently, tsrs is still experimental. It does not yet support watch mode or the language server, --init and --showConfig are unavailable, and diagnostic ordering may differ from the original. For more information, see the compatibility notes.
Since tsrs tracks TypeScript 7, teams still using TypeScript 5 or 6 should first migrate to Microsoft's native Go port, and then replace it with tsrs. After completing the previous step, migrating to tsrs only requires continuing to use the existing tsconfig.
tsrs is released under the Apache-2.0 open source license and is now available on GitHub.
View the original English article: Cloudflare and VoidZero Introduce tsrs: An AI-Generated Rust Port of TypeScript