Compatibility
tsz is close to tsc compatibility across diagnostics, emit, and editor behavior. The remaining work is concentrated in real-project compile readiness and the last release-gate gaps tracked below.
Currently tracking TypeScript 6.0.3.
Type Checking
The conformance suite compares tsz diagnostics with tsc on TypeScript's own compiler tests. This is the main signal for whether tsz agrees with tsc about types and errors.
12,583 of 12,585 compiler tests match tsc.
Emit
Emit compatibility means the generated output matches what TypeScript users expect from tsc. JavaScript emit and declaration emit are tracked separately because they fail for different reasons and matter to different users.
JavaScript emit is at 100.0% (1 skipped). Declaration emit is at 100.0% (11,862 skipped).
Language Service
The language-service suite checks editor-facing behavior: completions, hover, go-to-definition, diagnostics, and related workflows that developers feel in an IDE.
6,556 of 6,562 editor tests match the TypeScript suite.
Project compatibility
These rows track real project fixtures that tsc accepts. A green row means tsz completed the same project check; red or yellow rows identify the current compatibility blocker.
| utility-types | green | exit success | check | 5 files | 34 MiB peak |
| ts-essentials | green | exit success | check | 95 files | 35 MiB peak |
| RxJS | green | exit success | check | 240 files | 39 MiB peak |
| type-fest | green | exit success | check | 206 files | 42 MiB peak |
| ts-toolbelt | yellow | nonzero exit | check | 242 files | 232 MiB peak |
| Zod | yellow | nonzero exit | check | 8 files | 268 MiB peak |
| Kysely | yellow | nonzero exit | check | 272 files | 798 MiB peak |
| type-challenges solutions | green | exit success | check | 78 files | 20 MiB peak |
| generated Vite app | green | exit success | check | 4 files | 78 MiB peak |
| generated Next app | green | exit success | check | 7 files | 89 MiB peak |
| large-ts-repo | red | timeout | timing | 6,061 files | — |
| Next.js full project | green | exit success | check | 1,396 files | 222 MiB peak |
| Valibot | red | timeout | check | 1,083 files | 1,623 MiB peak |
| MSW | yellow | nonzero exit | check | 156 files | 244 MiB peak |
| Comlink | yellow | nonzero exit | check | 3 files | 122 MiB peak |
| Effect | red | timeout | check | 363 files | 785 MiB peak |
| Drizzle ORM | red | timeout | check | 448 files | 1,378 MiB peak |
| ts-rest | yellow | nonzero exit | check | 30 files | 174 MiB peak |
| ofetch | yellow | nonzero exit | check | 7 files | 51 MiB peak |
| ts-pattern | yellow | nonzero exit | check | 18 files | 181 MiB peak |
| tRPC | yellow | nonzero exit | check | 107 files | 263 MiB peak |
| TanStack Query | yellow | nonzero exit | check | 49 files | 213 MiB peak |
| TanStack Router | yellow | nonzero exit | check | 62 files | 301 MiB peak |
| Zustand | yellow | nonzero exit | check | 16 files | 59 MiB peak |
| Jotai | yellow | nonzero exit | check | 37 files | 215 MiB peak |
| fp-ts | yellow | nonzero exit | check | 123 files | 869 MiB peak |
| io-ts | yellow | nonzero exit | check | 16 files | 192 MiB peak |
| Immer | yellow | nonzero exit | check | 17 files | 47 MiB peak |
| Remeda | red | timeout | check | 522 files | 697 MiB peak |
| ts-morph | red | timeout | check | 1,007 files | 1,316 MiB peak |
| ArkType | yellow | nonzero exit | check | 154 files | 255 MiB peak |
| Superstruct | yellow | nonzero exit | check | 8 files | 35 MiB peak |
| Runtypes | yellow | nonzero exit | check | 76 files | 218 MiB peak |
| HotScript | yellow | nonzero exit | check | 39 files | 61 MiB peak |
| TypeBox | red | timeout | check | 709 files | 767 MiB peak |
| class-transformer | yellow | nonzero exit | check | 35 files | 38 MiB peak |
| TypeGraphQL | yellow | nonzero exit | check | 116 files | 251 MiB peak |
| neverthrow | yellow | nonzero exit | check | 5 files | 219 MiB peak |
| XState | yellow | nonzero exit | check | 72 files | 275 MiB peak |
| MobX | red | crash | check | 58 files | 218 MiB peak |