DEV Community

Alex Spinov
Alex Spinov

Posted on

Oxlint Has a Free Rust-Powered JavaScript Linter — Here's How to Use It

ESLint works but takes 30+ seconds on large codebases. Oxlint runs the same checks 50-100x faster — built in Rust, zero config, and compatible with your existing rules.

What Is Oxlint?

Oxlint is a JavaScript/TypeScript linter written in Rust. It's part of the Oxc project (Oxidation Compiler) and provides instant linting feedback even on massive codebases.

Speed Comparison

Codebase Size ESLint Oxlint
1K files 5s 0.1s
10K files 30s 0.5s
50K files 3 min 2s

Quick Start

npx oxlint@latest
Enter fullscreen mode Exit fullscreen mode

No config file, no plugins to install, no .eslintrc. It just works.

What It Checks

Oxlint includes 200+ rules from popular ESLint plugins:

# Default — catches common bugs
npx oxlint

# Enable more categories
npx oxlint -A correctness -A perf -A suspicious

# Deny specific rules
npx oxlint -D no-unused-vars -D no-console
Enter fullscreen mode Exit fullscreen mode

Built-in Plugin Rules

  • eslint core rules
  • typescript-eslint rules
  • eslint-plugin-react rules
  • eslint-plugin-import rules
  • eslint-plugin-jest rules
  • eslint-plugin-unicorn rules
  • eslint-plugin-jsx-a11y rules

Use With ESLint

Oxlint is designed to complement ESLint, not replace it:

// .eslintrc.json  disable rules Oxlint already handles
{
  "extends": ["plugin:oxlint/recommended"]
}
Enter fullscreen mode Exit fullscreen mode

Run Oxlint first (fast catches), then ESLint (custom rules):

// package.json
{
  "scripts": {
    "lint": "oxlint && eslint ."
  }
}
Enter fullscreen mode Exit fullscreen mode

CI Integration

- name: Lint
  run: npx oxlint@latest --deny-warnings
Enter fullscreen mode Exit fullscreen mode

Configuration

// oxlintrc.json (optional)
{
  "rules": {
    "no-unused-vars": "warn",
    "no-console": "off",
    "eqeqeq": "error"
  },
  "ignorePatterns": ["dist", "node_modules"]
}
Enter fullscreen mode Exit fullscreen mode

Why Oxlint

  • 50-100x faster than ESLint
  • Zero config — works immediately
  • 200+ rules built-in from popular plugins
  • Better error messages — clear, actionable diagnostics
  • No dependencies — single binary
  • IDE support — VS Code extension available

Get Started


Linting your scraping code? My Apify actors follow best practices for data extraction. Custom solutions: spinov001@gmail.com

Top comments (0)