Rust-Based Oxc Promises 40x Faster Linting
The developer toolchain is getting a speed boost as projects like Makerkit are swapping out JavaScript-based ESLint and Prettier for Oxc. The Rust-based linter and formatter is reportedly yielding a 40x speedup, highlighting a broader trend toward more performant developer tooling.
The Oxc project is a full suite of high-performance JavaScript tools written in Rust, developed under VoidZero, a company founded by Vue.js and Vite creator Evan You. It's not just a linter; the project also includes a parser, transformer, minifier, and formatter designed to overhaul the entire JavaScript toolchain, which has historically suffered from performance issues. The performance gains extend beyond linting. Benchmarks show the linter, Oxlint, performing 50 to 100 times faster than ESLint, depending on the number of CPU cores. The formatter, Oxfmt, is benchmarked at roughly 30 times faster than Prettier, while the transformer is 40 times faster than Babel. Oxc's speed comes from its architecture. All tools in the suite share a single, highly optimized parser built in Rust. This eliminates the redundant parsing that occurs when multiple JavaScript-based tools like ESLint and Prettier each process the same code independently, which is a major bottleneck in traditional toolchains. Major tech companies are already adopting components of Oxc in their production environments. Shopify, Airbnb, Mercedes-Benz, and ByteDance have integrated Oxlint to reduce CI/CD costs and shorten developer wait times. Migration from existing tools is designed to be gradual. Oxlint now covers over 690 rules from ESLint core and popular plugins like TypeScript, React, and Jest. The formatter, Oxfmt, is designed to be a drop-in replacement, passing 100% of Prettier's JavaScript and TypeScript conformance tests to avoid massive diffs when switching. This shift is part of a wider industry trend of rebuilding core developer infrastructure in systems languages like Rust for better performance and memory safety. As codebases grow into massive monorepos, the speed limitations of single-threaded, JavaScript-based tooling have become a significant pain point that Rust-based solutions are directly addressing.