TL;DR
Get business pricing on monitors, keyboards and dev gear
- Business-only prices and quantity discounts
- Tax-exempt purchasing
- Multiple users, one account, clear invoices
Cloudflare and VoidZero are developing tsrs, a Rust port of the TypeScript compiler, with Max Schwenk of Owner.com and in collaboration with the TypeScript team. Cloudflare reports early tests showing up to 8x speed and about 70% less memory than TypeScript 7.0 under a matched worker configuration, but the project is experimental and still has behavioral differences.
Cloudflare and VoidZero are working with Max Schwenk of Owner.com on tsrs, an experimental Rust port of the TypeScript compiler. The project is being developed in collaboration with the TypeScript team and incubated within the Oxc JavaScript toolchain; Cloudflare says early benchmarks show faster type checking and lower memory use than TypeScript 7.0 under the same worker configuration.
Cloudflare’s report says tsrs was up to 8 times faster and used about 70% less memory than TypeScript 7.0 when both were run with the same number of type-check workers. Those figures are early benchmark results, not a guarantee of performance across projects or machines. Cloudflare also notes that its default adaptive configuration can use more memory in exchange for higher speed, so results depend on configuration.
The comparison includes a moving upstream target: Cloudflare says TypeScript 7.1 beta was already up to 2.5 times faster than TypeScript 7.0. Some optimizations in that beta came from work on tsrs, according to the report. The project says it coordinated benchmark settings with the TypeScript team, after concerns that other port comparisons have used different hardware or options from TypeScript’s defaults.
Developers can try an experimental package through npm by installing tsrs and running its command-line tool. Cloudflare says the current port still differs from upstream in some areas, including the order of printed diagnostics. The team’s stated aim is to minimize those differences before a stable release, while keeping TypeScript’s existing implementation as the authority for language behavior.
Faster Checks Beyond the Desktop
The project is about more than reducing wait time for developers. Cloudflare says a compiler with a smaller memory footprint could make it practical to run complete development environments in constrained settings, including browser-based and sandboxed environments. Rust’s memory model is a particular reason for the choice: the report argues that Rust can work efficiently with WebAssembly hosts without bringing along a language garbage collector in the way a Go-to-Wasm build does.
That could matter for software build and deployment systems running in tight loops on Cloudflare Workers, as well as tools that run in a browser, embedded device or IoT application. These are potential uses described by the project, not confirmed deployments of tsrs. For developers, the immediate question is whether the port can combine improved performance with the compatibility expected from TypeScript’s compiler.
The work also has a wider ecosystem implication. Cloudflare says performance improvements found in tsrs may be contributed to the TypeScript Go codebase, meaning some gains could benefit users of the upstream compiler rather than only users of the Rust port. That outcome depends on whether proposed changes are suitable and accepted upstream.
As an affiliate, we earn on qualifying purchases.
Why Build Another TypeScript Compiler
TypeScript has already undergone a major implementation change. Cloudflare’s report points to the TypeScript team’s port from JavaScript to Go, which it says substantially improved speed and memory use. The new Rust project is not presented as a replacement for that work: Cloudflare says the TypeScript team should retain sole control of the language’s design and direction.
The project’s stated goal is a faithful port, not a fork that sets its own language behavior. Cloudflare says TypeScript’s features can be explored and prototyped over long periods before the team settles on an implementation. A separate compiler must track those decisions closely to avoid incompatibility. The report attributes renewed interest in ports partly to frontier AI models’ ability to assist with large-scale code translation, while warning implicitly that producing a port does not by itself establish compatibility.
Cloudflare says tsrs is being incubated in Oxc, a Rust-based JavaScript tooling project. The company also describes a plan to work with Theo Browne to combine tsc-rs and tsrs into one package supporting TypeScript features including the Language Server Protocol and content mappers. That work is part of the effort to make the port useful beyond a basic compiler command.
“We are not forking TypeScript.”
— Cloudflare, in its report on tsrs
As an affiliate, we earn on qualifying purchases.
Compatibility and Benchmarks Still Developing
Tsrs remains experimental, and the published performance figures come from early benchmarks reported by the project. The report does not provide enough detail here to establish how results vary across different codebases, hardware, or workload patterns. Its “up to” speed figure and approximate memory reduction should not be read as typical results for every developer.
There are also known behavioral differences from upstream TypeScript, including diagnostic ordering. Cloudflare has not said when a stable release will be ready, or when the planned combined package with tsc-rs will be complete. The long-term degree of feature parity and the pace at which tsrs will track future TypeScript releases remain open questions.
Although Cloudflare says it is working closely with the TypeScript team, the report does not describe a formal maintenance commitment by that team or say that TypeScript will adopt every optimization developed for tsrs. Proposed improvements to the Go codebase would still need to be evaluated upstream.
As an affiliate, we earn on qualifying purchases.
Tracking Upstream and Testing Parity
Cloudflare says it plans to use an automated process modeled on its maintenance of Vinext: agents would review upstream TypeScript changes, open tracking issues, and run compatibility tests. When tests expose gaps, the process is intended to help identify relevant changes and propose fixes. The report describes this as a maintenance plan, not a completed compatibility system.
The next milestones are to continue reducing differences from upstream, work toward combining tsc-rs and tsrs, and determine whether performance improvements can be contributed to the TypeScript Go codebase. Developers can test the experimental npm release, but the project has not provided a stable-release date. Its progress will be measured not only by benchmark results, but also by how closely it follows TypeScript’s evolving behavior.
TypeScript development environment
As an affiliate, we earn on qualifying purchases.
As an affiliate, we earn on qualifying purchases.
Key Questions
What is tsrs?
Tsrs is an experimental Rust port of the TypeScript compiler, developed by Cloudflare, VoidZero and Max Schwenk of Owner.com in collaboration with the TypeScript team.
Is tsrs replacing or forking TypeScript?
No. Cloudflare says the project is not a fork and that the TypeScript team should retain control of the language’s design and direction. Tsrs is intended to track upstream behavior.
How much faster is tsrs?
Cloudflare reports that early tests found tsrs up to 8 times faster than TypeScript 7.0, with about 70% less memory under a matched number of type-check workers. The project says this is an early result, not a universal performance guarantee.
Can developers use tsrs now?
Cloudflare says an experimental npm package is available to try. It is not described as a stable release, and the report identifies differences from upstream TypeScript that the team still aims to reduce.
Why use Rust instead of Go?
Cloudflare points to Rust’s fit with WebAssembly and its memory-management model, which the company says can make it easier to run compiler workloads in browser, sandboxed and resource-constrained environments.
Source: hn
Fall Picks
fall essentials
As an affiliate, we earn on qualifying purchases.
