tsz - A TypeScript compiler in Rust.

1 min read Original article ↗

tsz is a TypeScript checker and language service written in Rust. It is designed to outperform tsgo, and beyond speed, tsz also explores an experimental Sound Mode for stricter type-checking.

Performance

Sum across 49 successful micro benchmark cases.

Per-case geomean across the same rows: tsz 2.37x faster.

Project Status

Work in progress. The chart above only reflects micro benchmarks. Large-project performance work is still underway, and at the moment tsz is not optimized for large projects.

TypeScript compatibility

tsz runs TypeScript's own test suite against tsc, comparing diagnostics, JavaScript emit, declaration emit, and language service behavior. Even with 100% of TypeScript's compiler tests passing, we are not yet confident that tsz is fully compatible. Many full-project benchmarks still fail to compile, and many open bugs are not covered by conformance tests.

Currently targeting TypeScript 6.0.3

1,166,800 lines of Rust across 14 crates (1,004,275 source · 162,525 test)