Skip to main content

oxlint

A Rust-based JavaScript and TypeScript linter from the Oxc toolchain. 50–100x faster than ESLint, zero configuration required to start, built-in auto-fix, and a growing set of ESLint-compatible rules.

✓ 50–100x faster than ESLint ✓ Zero config to start ✓ Built-in --fix support ✓ JSX and TSX support ✓ ESLint-compatible rules ✓ Part of the Oxc toolchain

What is oxlint?

oxlint is a JavaScript and TypeScript linter written in Rust, developed as part of the Oxc (JavaScript Oxidation Compiler) project. It was designed from the ground up to be extremely fast by leveraging Rust's memory safety and parallel processing capabilities. On large codebases oxlint consistently benchmarks 50–100x faster than ESLint, often completing in milliseconds rather than seconds.

oxlint requires zero configuration to start — just point it at a directory and it immediately catches common correctness errors, suspicious patterns, and style issues. It supports JSX and TSX, has a built-in --fix flag, and is designed to be run alongside or as a replacement for ESLint as its rule coverage grows. The official documentation is at oxc.rs.

Key Features

Installation

# Run oxlint without installing (one-shot check)
npx oxlint@latest .

# Add oxlint as a dev dependency
npm add -D oxlint

# Lint the current directory
npx oxlint .

# Lint and auto-fix fixable issues
npx oxlint --fix .

# Lint a specific file or glob
npx oxlint src/

# Lint with a specific rule category enabled
npx oxlint --deny correctness .

Adding to package.json Scripts

The simplest integration is to add lint scripts to your package.json. oxlint exits with a non-zero code on errors, making it immediately usable in CI.

// package.json — add a lint script
{
  "scripts": {
    "lint": "oxlint .",
    "lint:fix": "oxlint --fix ."
  },
  "devDependencies": {
    "oxlint": "^0.4.0"
  }
}

GitHub Actions CI Integration

oxlint fits naturally into any CI workflow. Below is a minimal GitHub Actions example that lints on every push and pull request.

# .github/workflows/lint.yml
name: Lint

on: [push, pull_request]

jobs:
  oxlint:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 20
      - run: npm ci
      - run: npx oxlint .

Migrating from ESLint

The recommended migration strategy is incremental: run oxlint alongside ESLint first, identify overlapping rules, then progressively reduce ESLint's scope. This is zero-risk and immediately speeds up your CI feedback loop.

# Step 1 — run oxlint alongside ESLint (zero risk)
# oxlint catches issues ESLint misses at 50-100x the speed

# Step 2 — disable rules in ESLint that oxlint now covers
# oxlint outputs a list of covered rules:
npx oxlint --rules

# Step 3 — once confident, remove ESLint entirely
npm remove eslint eslint-config-* eslint-plugin-*
npm add -D oxlint

oxlint vs ESLint

Feature oxlint ESLint
Speed50–100x faster (Rust)Slower (Node.js)
Configuration requiredNone to startFlat config or .eslintrc required
Plugin ecosystemLimited (growing)Thousands of plugins
Rule coverageCore + growingComprehensive
Built-in fixYes (--fix)Yes (--fix)
JSX / TSX supportYes (native)Requires plugins

Pros and Cons

Pros

  • ✓ Dramatically faster than ESLint — near-instant feedback on large codebases
  • ✓ Zero configuration required to start linting immediately
  • ✓ Native JSX and TypeScript support without extra plugins
  • ✓ Can run alongside ESLint — no forced migration required
  • ✓ Actively developed with rapid rule coverage expansion

Cons

  • ✗ Plugin ecosystem is much smaller than ESLint's
  • ✗ Cannot yet replace ESLint for projects using many community plugins
  • ✗ Rule coverage, while growing, is not yet 100% ESLint-compatible
  • ✗ Fewer IDE extensions compared to ESLint's mature tooling
  • ✗ Still maturing — some APIs and config options may change

Frequently Asked Questions

What is oxlint?▼

oxlint is a JavaScript and TypeScript linter written in Rust, developed as part of the Oxc (JavaScript Oxidation Compiler) toolchain. It is designed to be 50–100x faster than ESLint by leveraging Rust's performance characteristics and parallel processing. It supports JSX, TSX, and a growing set of lint rules compatible with the ESLint rule API.

How does oxlint compare to ESLint?▼

oxlint is dramatically faster than ESLint — benchmarks show 50–100x speed improvements on large codebases. ESLint has a much larger ecosystem with thousands of community plugins and rules. oxlint covers the most commonly used correctness and style rules out of the box. For projects that primarily use the ESLint core rules and popular plugins, oxlint can serve as a drop-in speed upgrade.

Can oxlint fully replace ESLint?▼

Not yet for every project. oxlint covers a large and growing set of rules, but ESLint has thousands of community plugins (eslint-plugin-react, eslint-plugin-import, etc.) that have no oxlint equivalent yet. The recommended migration path is to run oxlint alongside ESLint first, then disable the ESLint rules that oxlint already covers, and gradually reduce ESLint's scope. The oxlint team maintains an ESLint compatibility list.

What rules does oxlint support?▼

oxlint ships with rules across several categories: correctness (logic errors, no-unused-vars), pedantic (stylistic consistency), suspicious (likely bugs), restriction (opinionated constraints), and nursery (new, experimental rules). Run npx oxlint --rules to see the full list of currently supported rules. Coverage of ESLint's built-in rules is extensive and growing rapidly with each release.

Is oxlint stable enough for production CI?▼

Yes. oxlint has been adopted by large projects and is actively maintained by the Oxc team. It follows semantic versioning and the API is stable. The recommended approach is to start with the default rule set and incrementally enable stricter categories. Running it in CI as a fast pre-check alongside a slower ESLint pass is a common production pattern.

How do I integrate oxlint with CI/CD?▼

oxlint is a single binary with no configuration required to start. Add it as a dev dependency (npm add -D oxlint), add a lint script in package.json, and call it in your CI workflow. It exits with a non-zero code when lint errors are found, making it compatible with any CI system (GitHub Actions, GitLab CI, CircleCI, etc.). A minimal GitHub Actions step is just: run: npx oxlint .

Share this tool: X / Twitter LinkedIn
✓ 60,000+ developers use DevPlaybook ★★★★★ 4.8 / 5 on Gumroad ✓ MIT licensed · Instant download ✓ No login required

Related Products

on Gumroad

You Might Also Need

More Free Tools

SQL to TypeScript Types TypeScript Discriminated Union Builder Web Performance Checklist TypeScript Playground TypeScript to JavaScript Converter TypeScript tsconfig.json Generator JS Prototype Chain Visualizer Neon DB Query Builder Code Tools JavaScript Formatter & Minifier JSON to TypeScript Interface Prettier Config Generator Lighthouse Score Simulator Web Vitals Budget Planner Zustand Store Builder GraphQL Client Configurator Axios Interceptor Builder Jest Mock Generator Turso Edge DB Explorer Core Web Vitals Guide ESLint Config Generator Regex Visualizer Regex Tester Pro Regex Tester Web Vitals Scorer Biome Config Generator SQL Index Advisor HAR Diff Analyzer MySQL Query Explainer PostgreSQL EXPLAIN Analyzer AI JSDoc Generator Vitest Configuration Generator Regex Flags Explainer k6 Load Test Script Generator HTTP/2 Server Push Headers Builder Jest Coverage Config Generator Web Vitals Analyzer Bundle Size Estimator JavaScript Memory Leak Detector Database Index Analyzer NPM Bundle Size Estimator Jest Testing Framework Guide AWS CDK Infrastructure as Code Guide Pulumi Modern IaC Guide Core Web Vitals Calculator JSON Schema to Zod Converter Drizzle Schema Generator Database Index Advisor Playwright Test Generator Pulumi Stack Config Generator Bundle Size Impact Calculator HTML5 Canvas API Playground Game Loop Calculator Bezier Curve Editor Particle System Config Generator LLM Benchmark Calculator k6 Script Generator TanStack Query Config Builder SWR Config Generator Jotai Atom Explorer OpenAI Function Calling Generator Core Web Vitals Budget Calculator Bundle Size Budget Calculator Image Optimization Calculator TTFB Analyzer Database Query Cost Analyzer React Component Generator

Enjoying this tool? Get more like it.

Weekly developer tool guides, productivity playbooks & AI tricks. Free. No spam.

DevPlaybook Pro 7 days free

Unlock AI-Powered Dev Tools

  • ⚡ AI Code Review, Doc Generator & SQL Builder
  • ⚡ All premium templates & early access
  • ⚡ Member discounts on Gumroad products
Start Free Trial →

$9/mo after trial · Cancel anytime

Want the full toolkit?

Get DevPlaybook Pro

Every template, guide, boilerplate, and automation script in one bundle. 13 premium products — grab them all at once and save big.

$79
$241 separately Save $162 (67% off)
Get DevPlaybook Pro — $79 →

MIT licensed · Instant download · No subscription

See what's included → Browse all deals →