Skip to content
Latchkey

Oxlint vs ESLint: Which JS Linter for CI?

Oxlint (from the Oxc project) is a Rust-based linter that runs orders of magnitude faster than ESLint, which keeps the complete rule and plugin ecosystem.

ESLint is the standard JavaScript/TypeScript linter with the largest rule and plugin set. Oxlint is a Rust-based linter focused on speed, covering many common rules with near-zero configuration and improving coverage over time.

OxlintESLint
ImplementationRustJavaScript
SpeedExtremely fastSlower
Rule coverageMany common rules, growingComplete, largest
Plugin ecosystemLimited, growingLargest
ConfigNear zeroFlexible

In CI

Oxlint can lint huge codebases in a fraction of ESLint's time, which makes it attractive as a fast first-pass gate. It does not yet cover every ESLint rule or plugin, so many teams run Oxlint for speed and keep ESLint for the rules Oxlint lacks - often Oxlint on every push and a fuller ESLint pass less frequently. If you depend on custom or framework-specific plugins, ESLint remains essential.

Use them together

Run Oxlint as a fast pre-check and ESLint for the rules it does not cover; cache nothing special since linting is CPU-bound. Both run on CI runners; faster managed runners shorten the ESLint pass on large repos.

The verdict

Want an ultra-fast lint pass and your critical rules are covered: Oxlint (often alongside ESLint). Need the complete rule and plugin ecosystem: ESLint. Many teams pair them - Oxlint for speed, ESLint for coverage.

Related guides

References

Run this faster and cheaper on Latchkey managed runners - self-healing included. Start free → 30-day trial · No credit card