JavaScript와 TypeScript를 위한 무설정 린터 및 포매터로, 명령 하나로 Biome, ESLint 또는 Oxlint에 프리셋 규칙을 적용합니다.
shadcn-ui/lint
Tailwind 디자인 시스템을 위한 에이전트 우선 린터로, 허용할 스타일 규칙을 정의하고 프로젝트의 컴포넌트와 테마를 바탕으로 에이전트에 수정 방법을 제안합니다.
- 스타
- 3,239
- 포크
- 69
- 열린 이슈
- 13
- 마지막 커밋
- 그저께
어떤 프로젝트인가요?
@shadcn/lint는 UI 코드에 디자인 시스템 규칙을 적용하는 Tailwind v4 프로젝트용 린터입니다. Button의 className 오버라이드를 제한하거나, p-[13px] 같은 임의의 값을 차단하거나, 원시 색상값을 거부하는 등 허용할 스타일을 정의할 수 있습니다. 규칙을 위반하면 무엇이 잘못되었는지 설명하고 프로젝트의 컴포넌트, variants, 테마를 바탕으로 대안을 제안합니다.
ESLint 또는 Oxlint 플러그인으로 실행되며 React, Vue, Svelte를 지원합니다. shadcn/ui가 필수는 아니며, 사용자 정의 Tailwind 컴포넌트와 테마에서도 작동합니다. 또한 접두사, 정규식 패턴 또는 components.json 파일을 통해 컴포넌트 import를 읽을 수 있습니다.
contracts를 사용해 컴포넌트별로 규칙을 적용할 수 있으며, {{sizes}} 같은 플레이스홀더를 포함한 사용자 정의 메시지로 에이전트에 사용할 크기, variant 또는 테마 파일을 정확히 지정할 수 있습니다. 에이전트는 변경 후 lint 명령을 실행해 작업을 확인합니다.
핵심 기능
- 01컴포넌트별 contracts로 className 오버라이드를 제한합니다.
- 02테마 토큰을 사용하도록 임의의 값과 원시 색상값을 차단합니다.
- 03프로젝트의 크기, variants, 테마 파일을 활용해 수정 방법을 제안합니다.
- 04ESLint와 Oxlint에서 React, Vue, Svelte를 지원합니다.
- 05shadcn/ui가 필요하지 않으며 사용자 정의 컴포넌트 import를 읽을 수 있습니다.
활용 사례
- Tailwind 코드베이스에서 AI 코딩 에이전트가 공유 UI 컴포넌트의 스타일을 임의로 바꾸지 못하게 합니다.
- 팀 디자인 시스템 전반에 테마 기반 간격과 색상 규칙을 적용합니다.
- 포크하지 않고 서드파티 또는 모노레포 컴포넌트 패키지에 디자인 규칙을 적용합니다.
빠른 시작
- 1
npm으로 패키지와 ESLint를 설치합니다
npm install -D @shadcn/lint eslint @typescript-eslint/parser - 2
플러그인과 규칙을 포함한 eslint.config.mjs를 만듭니다(README 참조)
- 3
린터를 실행합니다
npx eslint .
사용 전 알아둘 점
- Tailwind v4 프로젝트에서만 작동합니다.
- Oxlint는 Vue 및 Svelte 파일의 script 블록만 읽고 마크업은 읽지 않습니다.
- Node.js 20.19 이상이 필요합니다.
토픽
자주 묻는 질문
- lint은(는) 무엇인가요?
- Tailwind 디자인 시스템을 위한 에이전트 우선 린터로, 허용할 스타일 규칙을 정의하고 프로젝트의 컴포넌트와 테마를 바탕으로 에이전트에 수정 방법을 제안합니다. @shadcn/lint는 UI 코드에 디자인 시스템 규칙을 적용하는 Tailwind v4 프로젝트용 린터입니다. Button의 className 오버라이드를 제한하거나, p-[13px] 같은 임의의 값을 차단하거나, 원시 색상값을 거부하는 등 허용할 스타일을 정의할 수 있습니다. 규칙을 위반하면 무엇이 잘못되었는지 설명하고 프로젝트의 컴포넌트, variants, 테마를 바탕으로 대안을 제안합니다.
- lint은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- lint은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- lint은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. lint의 마지막 커밋은 2026년 10월 19일입니다.
- lint은(는) 어디에 사용할 수 있나요?
- Tailwind 코드베이스에서 AI 코딩 에이전트가 공유 UI 컴포넌트의 스타일을 임의로 바꾸지 못하게 합니다. 팀 디자인 시스템 전반에 테마 기반 간격과 색상 규칙을 적용합니다. 포크하지 않고 서드파티 또는 모노레포 컴포넌트 패키지에 디자인 규칙을 적용합니다.
- lint는 어떻게 설치하나요?
- npm으로 패키지와 ESLint를 설치합니다: npm install -D @shadcn/lint eslint @typescript-eslint/parser 플러그인과 규칙을 포함한 eslint.config.mjs를 만듭니다(README 참조) 린터를 실행합니다: npx eslint .
- lint은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/shadcn-ui/lint
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
자연어 프롬프트와 이미지를 바탕으로 parametric OpenSCAD 3D CAD 모델을 생성하는 브라우저 기반 오픈소스 웹 앱입니다.
OpenUI를 기반으로 모델 답변을 대화형 지도, 차트, 폼, 실제로 작동하는 도구로 스트리밍해 표시하는 오픈소스 Next.js 데모입니다.
JSX와 유사한 문법으로 UI 컴포넌트를 한 번 작성하고 React, Vue, Angular, Svelte, Solid, Qwik 등으로 컴파일합니다.
코딩 어시스턴트에 검색 가능한 UI/UX 디자인 규칙, 스타일, 팔레트, 폰트 조합과 기술 스택별 가이드를 제공하는 AI 에이전트 스킬입니다.
Radix UI와 Tailwind CSS 기반의 React 컴포넌트를 복사해 사용하고, 직접 소유하며 코드베이스에서 자유롭게 수정할 수 있습니다.