Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@sard-runway/eslint-config

iamfiro721.0.0

모던 타입스크립트 + 리액트 프로젝트를 위한 Airbnb 기반 ESLint 설정

eslint, eslint-config, eslint-config-airbnb, eslint-config-airbnb-typescript, eslint-plugin-import, eslint-plugin-jsx-a11y, eslint-plugin-react, eslint-plugin-react-hooks

readme

@sard-runway/eslint-config

모던 타입스크립트 + 리액트 프로젝트를 위한 Airbnb 기반 ESLint 설정


✨ 특징

  • Airbnb 스타일 가이드 기반
  • TypeScript 완전 지원
  • Prettier 통합 (포맷팅 자동화)
  • Import 경로 alias(@/) 인식 지원
  • React Hooks 룰 포함
  • Simple Import Sort로 깔끔한 import 정렬

📦 설치

루트에서 다음 명령어로 설치합니다:

pnpm add -D eslint @sard-runway/eslint-config

또는 npm 사용시:

npm install --save-dev eslint @sard-runway/eslint-config

주의:

이 설정은 peerDependencies로 다음 패키지들을 필요로 합니다: eslint, eslint-plugin-react, eslint-plugin-import, eslint-plugin-jsx-a11y, @typescript-eslint/*, prettier

⚙️ 사용 방법

각 패키지(예: packages/web)의 .eslintrc.js 파일에 다음처럼 설정합니다:

module.exports = {
  extends: ['@sard-runway/eslint-config'],
};

🛠️ 추가 설정

tsconfig.json

프로젝트 루트 또는 패키지에 baseUrl과 paths를 설정해야 합니다:

{
  "compilerOptions": {
    "baseUrl": ".",
    "paths": {
      "@/*": ["./src/*"]
    }
  }
}

VsCode 권장 설정

{
  "editor.formatOnSave": true,
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": true
  },
  "eslint.validate": [
    "javascript",
    "javascriptreact",
    "typescript",
    "typescriptreact"
  ],
  "prettier.requireConfig": true
}

📝 스크립트 예시

루트 package.json에 다음 스크립트를 추가할 수 있습니다:

{
  "scripts": {
    "lint": "eslint . --ext .js,.jsx,.ts,.tsx",
    "lint:fix": "eslint . --ext .js,.jsx,.ts,.tsx --fix"
  }
}