monorepo
μμ μ¬μ©νλ μ½λ νμ§ λꡬ(ESLint, Prettier, TypeScript, Husky)μ μ€μ κ³Ό μ¬μ© λ°©λ²μ μ 리ν κ°μ΄λμ
λλ€.
λͺ¨λ νλ‘μ νΈ(React Vite, React CRA, Node.js Express, NestJS)λ κ³΅ν΅ μ€μ μ κΈ°λ°μΌλ‘ κ΄λ¦¬λλ©°, νλ‘μ νΈ νΉμ±μ λ°λΌ μ΅μνμ μ°¨μ΄λ§ λ‘λλ€.
packages/eslint-config
base.js
: λͺ¨λ νλ‘μ νΈ κ³΅ν΅ κ·μΉreact.js
: React μ μ© κ·μΉ (CRA, Vite)node.js
: Node.js μ μ© κ·μΉ (Express, NestJS)ESLint v9 κΈ°μ€, .eslintrc
λμ eslint.config.js
νμΌμ μ¬μ©ν©λλ€.
// apps/web-app/eslint.config.js
import { config } from "@repo/eslint-config/react";
export default config;
// apps/auth-service/eslint.config.js
import { config } from "@repo/eslint-config/node";
export default config;
# μ 체 μν¬μ€νμ΄μ€ lint
npm run lint
# νΉμ μ±λ§ lint (μ± package.json lint μ€ν¬λ¦½νΈ νμ)
npm run lint --workspace=web-app
packages/prettier-config/index.json
: κ³΅ν΅ ν¬λ§·ν
κ·μΉ