Skip to content

Oxlint 베타

이 글은 Oxlint 베타 릴리스를 알립니다. Oxlint는 이후 v1.0 안정판에 도달했습니다. 최신 기능과 개선은 Oxlint v1.0 Stable 발표를 참고하세요.

커뮤니티가 1년 넘게 개발한 끝에 Oxlint 베타를 공개합니다!

이번 이정표는 기능 완성도, 성능, 안정성 모두에서 한 단계 도약입니다.

사용 방법

현재 Oxlint는 중소 규모 프로젝트에서는 ESLint를 완전히 대체해 사용할 수 있습니다.

대형 프로젝트에서는 eslint-plugin-oxlint로 ESLint 규칙을 끄고, 로컬·CI에서 ESLint보다 먼저 Oxlint를 돌려 빠른 피드백을 받는 구성을 권합니다.

코드베이스 루트에서 원하는 패키지 매니저로 시험해 볼 수 있습니다.

sh
$ npx oxlint@latest
sh
$ pnpm dlx oxlint@latest
sh
$ yarn dlx oxlint@latest
sh
$ bunx oxlint@latest
sh
$ deno run npm:oxlint@latest

Oxlint 사용·통합·에디터 연동에 대한 자세한 설명은 설치 가이드를 참고하세요.

정식 출시 이후 주요 신규 기능

  • 이전 릴리스 대비 최대 약 2배에 달하는 성능 개선
  • 별도 설치 없이 500개 이상 규칙 내장
  • typescript, unicorn, react, react-perf, nextjs, import, jsdoc, jsx-a11y, node, promise, jest, vitest 등 플러그인 규칙 다수 완성
  • .oxlintrc.json 설정 지원, 중첩 설정, 파일 간 extends, 특정 파일에 overrides 적용 등
  • .astro, .svelte, .vue<script> 내용을 추가 설정 없이 린트
  • 파일에 자동 수정과 제안 적용 가능

더 많은 규칙, 더 빠른 속도

많이 쓰이는 ESLint 규칙과 플러그인을 넓히는 동시에 Oxlint 자체 속도도 크게 높였습니다.

Oxlint 최초 GA에는 총 205개 규칙, 그중 기본 켜짐 70개였습니다. 이번 베타는 총 502개, 기본 켜짐 99개입니다(기본 켜짐 규칙 수 41% 증가).

Rule typeRule count (GA)Rule count (beta)Increase
Default rules7099+29 rules
Correctness88173+88 rules
Performance09+9 rules
Restrictions1564+49 rules
Pedantic4379+36 rules
Style38137+99 rules
Suspicious728+21 rules
Total rules205502+297 rules

기본 켜진 규칙이 많이 늘었음에도 Oxlint는 이전보다 훨씬 빠릅니다. 인기 저장소 기준 벤치마크 예시:

RepositoryFile countLint time (GA)Lint time (beta)Speedup
elastic/kibana68,5916.02s3.11s1.94x
microsoft/vscode5,7031.697s0.792s2.14x
vitest-dev/vitest1,732105ms50ms2.1x
vuejs/core1,063217ms89ms2.44x

로드맵

가장 많이 요청되는 기능 중 하나는 기존 커스텀 ESLint 플러그인 지원입니다. 전제 작업과 빠른 JavaScript 린트 플러그인을 위해 노력해 왔으며, 다음 메이저에서 이 기능을 내놓고 싶습니다. 곧 자세한 소식을 공유하겠습니다.

IDE·에디터 통합도 계속 개선할 예정이며, VSCode, Zed, coc.nvim, IntelliJ 플러그인 지원을 강화합니다.

감사의 말

Oxlint 베타는 프로젝트에 기여한 200명 넘는 기여자 없이는 불가능했습니다.

특히 다음 분들께 감사드립니다.