Oxc(JavaScript Oxidation Compiler)项目下的 Rust 实现 JS/TS linter,主打极致速度,1.0 稳定版已发布,800+ 内置规则,22k stars(归属 oxc-project/oxc 主仓库)。

核心特性

  • 速度:比 ESLint 快 50-100 倍,比 Biome 快约 3 倍(官方基准)
  • 零配置起步:安装后直接对目录跑检查,内置精选默认规则,不强制先写配置文件
  • 规则覆盖广:原生复刻 ESLint 核心规则 + 常用插件规则,包括 eslint-plugin-react、eslint-plugin-react-hooks、eslint-plugin-unicorn、eslint-plugin-jsx-a11y 等
  • 类型感知检查:借助 tsgo(TS 编译器的 Rust/Go 移植)实现真正的类型感知 lint,不依赖完整 TypeScript 编译器实例
  • 兼容 ESLint JS 插件:支持直接运行部分 ESLint 生态的 JS 插件,降低迁移门槛
  • 附带格式化:比 Prettier 快约 30 倍,还支持 Tailwind CSS class 排序

安装与使用

npm install -D oxlint
npx oxlint .              # 检查当前目录,零配置即可跑
npx oxlint . --fix        # 自动修复

从 ESLint 迁移

npx oxlint --init         # 生成基础配置骨架

Oxlint 官方定位是”先用 Oxlint 覆盖大部分规则做快速检查,ESLint 保留处理 Oxlint 尚未实现的特殊规则”,两者可以在 CI 中并行跑而不是互斥替换。

工具边界

  • 规则数量和插件复刻程度持续在追赶 ESLint,但小众/自定义插件规则仍有覆盖缺口
  • 类型感知检查依赖 tsgo,是相对较新的组件,边界场景可能与 tsc 原生行为有细微差异
  • 项目仍处于快速迭代期(1.0 刚发布不久),配置项和规则集变化频率高于 ESLint

相关

  • eslint — 规则复刻来源,可搭配使用而非完全替代
  • biome — 同为 Rust 实现的竞品,Oxlint 更专注速度,Biome 更强调 linter+formatter 一体化的完整度