Skip to content

mohsen1/tsz

Repository files navigation



tsz logo



tsz is a performance-first TypeScript compiler in Rust. z is for Zang!1 The goal is a correct, fast, drop-in replacement for tsc, with both native and WASM targets.

tsz is built the with help of AI-assistant coding. Many tools and AI models were used during its development.

TypeScript is intentionally unsound. tsz keeps a sound core solver and layers a compatibility engine on top to match TypeScript behavior while preserving correctness where possible.

Install

Warning

tsz is pre-release software and not yet a drop-in replacement for tsc. Diagnostics, inference, and emit may differ from TypeScript today. Use for experimentation only.

macOS & Linux

curl -fsSL https://tsz.dev/install | sh

Windows (PowerShell)

irm https://tsz.dev/install.ps1 | iex

TypeScript compatiblity

Currently targeting TypeScript@6.0.3

Type Checker

To ensure tsz is a drop-in replacement for tsc, we run the official TypeScript conformance test suite against it.

Progress: [████████████████████] 100.0% (12,581/12,582 tests)

Conformance is measured by diagnostic fingerprint comparison: each diagnostic must match tsc in error code, file, line, column, and message.

Emitter

We compare tsz JavaScript/declaration emit output against TypeScript's baseline files to ensure correct code generation.

JavaScript:  [███████████████████░] 94.8% (12,820 / 13,530 tests)
Declaration: [██████████████████░░] 91.7% (1,531 / 1,669 tests)

Language Service

We run TypeScript's fourslash language service tests against tsz-server to measure language service feature coverage (completions, quickinfo, go-to-definition, etc.).

Progress: [████████████████████] 99.9% (6,558 / 6,562 tests)

1: "Zang" is the Persian word for "rust".

About

A performance-first TypeScript checker

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Contributors