ESLint took 4.4 seconds to lint 445 TypeScript files. oxlint took 0.24. Turn on the type-aware rules that most projects actually want and ESLint climbs to 12 seconds, while oxlint, doing the type-aware pass too, finishes in under one. I went in expecting to write that oxlint was fast but limited. The limited part did not survive the test.
The setup
oxlint is the JavaScript and TypeScript linter from VoidZero, the company Evan You started after Vue and Vite, written in Rust and pitched as a much faster ESLint. I wanted a real number on a real codebase, not a toy, so I cloned the Vue core repository, 445 TypeScript files and about 150,000 lines, and linted the same tree four ways in a clean Node 20 container.
Two tools, two modes each. ESLint 9 with typescript-eslint, once with the plain recommended rules and once with the type-aware recommendedTypeChecked set that needs the TypeScript compiler behind it. Then oxlint, once with its defaults and once with --type-aware. Every
Discussion
Start the conversation
Your voice can be the first to spark an engaging conversation.