# Oxc Oxc is a suite of JavaScript/TypeScript tools rewritten in [[Rust]], maintained by VoidZero, the company Evan You (Vue, [[Vite]]) founded to rebuild the JS toolchain layer by layer, acquired by [[Cloudflare]] in June 2026 (tools stay MIT and vendor-agnostic). The bet: linting, formatting, parsing, and bundling are infrastructure, and infrastructure written in JS wastes everyone's CI minutes. ## The components | Tool | Replaces | Claim | Status | |---|---|---|---| | **Oxlint** | [[ESLint]] | 50-100x faster, 800+ rules, type-aware (via tsgolint) | Production-ready (type-aware rules stable since July 2026) | | **Oxfmt** | [[Prettier]] | 30x faster than Prettier, 3x faster than Biome | Beta | | **oxc-parser** | SWC parsing | 3x faster than SWC | Stable | | **oxc-resolver** | enhanced-resolve | 28x faster | Stable | | **oxc-transformer** | Babel/SWC transpile | TS, JSX, framework support | Stable | | **oxc-minifier** | Terser | dead-code elimination | Alpha | Speed numbers are project-published, but the ESLint-vs-Oxlint gap is large enough that independent reports land in the same ballpark. ## How to think about it - **Oxlint is the entry point.** [[ESLint]]-compatible rule set, drop-in for most configs, and fast enough to run on every save and every commit without caching gymnastics. Type-aware linting removes the last reason to keep ESLint around for most projects. - **Oxc vs Biome**: same thesis (Rust, all-in-one), different strategy. Biome ships one integrated tool; Oxc ships composable libraries that other tools build on; its parser and resolver already sit inside other bundlers and toolchains. Oxc is infrastructure first, product second. - **The VoidZero picture**: Oxc supplies the low-level pieces for [[Vite]]'s Rolldown bundler era. Adopting Oxlint today is also a bet on that consolidation, now a Cloudflare-owned one. ## tsrs joins Oxc (October 2026) On October 20, 2026, [[Cloudflare]] announced that Oxc now incubates [[tsrs]], a Rust port of the TypeScript 7 compiler (the [[Go]] one, tsgo), built with Max Schwenk of Owner.com in close collaboration with Microsoft's TypeScript team. It lives in its own repo (`oxc-project/tsrs`), and it's a faithful port that leaves the language design to Microsoft. It doesn't reuse Oxc's parser or AST: it ports TypeScript's own parser and checker. For Oxlint, this touches type-aware linting. Those rules currently run on tsgolint, a separate Go backend built on typescript-go, and Cloudflare names type-aware lint rules in Oxlint as the first tsrs integration it wants to try. Max Schwenk's `tsrslint` already runs those rules on tsrs as an opt-in binary. If Oxlint adopts it, type-aware linting stops depending on a second, Go-based checker. Benchmarks, scope and limits are in [[tsrs]]. ## References - [Oxc Website](https://oxc.rs) - [Oxc on GitHub](https://github.com/oxc-project/oxc) - [Oxlint type-aware linting](https://oxc.rs/docs/guide/usage/linter/type-aware) - [Introducing tsrs: a port of TypeScript to Rust (Cloudflare blog, October 20, 2026)](https://blog.cloudflare.com/typescript-rust-port/) ## Related - [[Rust]]: part of the same pattern: JS tooling migrating to Rust - [[Turbovec]]: unrelated domain, same "rewrite the hot path in Rust" wave - [[Vite]]: the flagship consumer of Oxc's foundations - [[ESLint]] · [[Prettier]]: what Oxlint and Oxfmt replace - [[Cloudflare]]: owner since June 2026 - [[tsrs]]: the Rust port of the TypeScript 7 compiler, incubated in Oxc since October 2026 - [[TypeScript]]: the language Oxc parses, transforms and lints