TL;DR

  • oxlint-plugin-tailwind-canonical이 Tailwind CSS 클래스의 표준 표기를 검사하고 oxlint --fix로 저장소 전체를 자동 수정함
  • mt-[16px]mt-4, [color:red]/50text-[red]/50, [@media_print]:flexprint:flex로 변환함
  • Tailwind 언어 서버와 동일한 제안을 적용하며 개별 클래스의 표기만 변경하고 순서 변경·중복 제거·유틸리티 병합은 수행하지 않음
  • Tailwind CSS v4와 Node 22 이상이 필요하며 oxlint, oxlint-plugin-tailwind-canonical, tailwindcss를 개발 의존성으로 설치함
  • cssPath, rootFontSize, JSX 속성 목록, 클래스 목록으로 처리할 함수 목록을 설정할 수 있으며 ${} 보간 문자열은 건너뜀

개요

  • oxlint-plugin-tailwind-canonical은 표준 Tailwind CSS 클래스 표기를 강제하고 --fix를 지원하는 Oxlint 플러그인임
  • Tailwind 언어 서버와 동일한 제안을 oxlint --fix를 통해 저장소 전체에 적용함
  • 다음과 같이 개별 클래스 표기만 변경함
  • mt-[16px]mt-4
  • [color:red]/50text-[red]/50
  • [@media_print]:flexprint:flex
  • 유틸리티 순서 변경, 중복 제거, 유틸리티 병합은 수행하지 않으며 해당 작업에는 oxfmtsortTailwindcss 사용이 필요함

설치

  • 다음 패키지를 개발 의존성으로 설치함
  • oxlint
  • oxlint-plugin-tailwind-canonical
  • tailwindcss
  • Tailwind CSS v4와 Node 22 이상이 필요함

사용법

  • oxlint.config.ts에서 tailwind-canonical JavaScript 플러그인과 canonical-class-names 규칙을 설정함
  • 규칙의 cssPath에는 Tailwind v4 진입 CSS 파일 경로를 지정함
  • 설정 후 oxlint --fix를 실행함

옵션

  • cssPath — 필수 옵션이며 Tailwind v4 진입 CSS 경로를 지정함. 절대 경로 또는 현재 작업 디렉터리 기준 상대 경로 사용 가능함
  • rootFontSizerem 정규화에 사용할 픽셀 값이며 기본값은 16
  • attributes — 클래스 목록으로 처리할 JSX 속성 목록이며 기본값은 ["class", "className"]
  • calleeFunctions — 문자열 인자를 클래스 목록으로 처리할 헬퍼 함수 목록이며 기본값은 ["cn", "clsx", "cva", "twMerge", "tw", "classNames", "cx"]
  • ${} 보간이 포함된 문자열은 건너뜀

라이선스

  • MIT 라이선스임