Prettier: Claude Code 활용 가이드
prettier: Claude Code 활용. 실용적인 팁과 코드 예시를 포함합니다.
Prettierで統一されたコード스타일を実現する
Prettierはopinionatedなコード포매터で、스타일에 관한議論を終わらせてくれるツールです。설정項目が限定されているため迷いが少なく、チーム全体で一貫したコード스타일を維持할 수 있습니다。Claude Code는 프로젝트に最適な설정の提案から、플러그인の통합までサポートします。
기본 설정
Claude Code에설정파일の생성を依頼합시다。
> TypeScript + React + Tailwind CSS프로젝트のPrettier설정를 생성해줘。
> Tailwind클래스の自動정렬、가져오기の自動整理も含めて。
// prettier.config.mjs
/** @type {import("prettier").Config} */
const config = {
// 基本설정
printWidth: 80,
tabWidth: 2,
useTabs: false,
semi: true,
singleQuote: false,
quoteProps: "as-needed",
trailingComma: "all",
bracketSpacing: true,
bracketSameLine: false,
arrowParens: "always",
endOfLine: "lf",
// JSX설정
jsxSingleQuote: false,
// 플러그인
plugins: [
"prettier-plugin-tailwindcss",
"@ianvs/prettier-plugin-sort-imports",
],
// Tailwind CSS클래스の自動정렬
tailwindFunctions: ["clsx", "cn", "cva"],
// 가져오기の自動整理
importOrder: [
"^(react/(.*)$)|^(react$)",
"^(next/(.*)$)|^(next$)",
"<THIRD_PARTY_MODULES>",
"",
"^@/lib/(.*)$",
"^@/hooks/(.*)$",
"^@/components/(.*)$",
"^@/styles/(.*)$",
"",
"^[./]",
],
importOrderParserPlugins: ["typescript", "jsx", "decorators-legacy"],
importOrderTypeScriptVersion: "5.0.0",
};
export default config;
無視설정
フォーマット対象外の파일を指定します。
# .prettierignore
node_modules/
.next/
out/
dist/
build/
coverage/
public/
# 自動生成ファイル
*.generated.ts
prisma/migrations/
src/generated/
# ロックファイル
package-lock.json
pnpm-lock.yaml
yarn.lock
# その他
*.min.js
*.min.css
파일種類ごとの설정
特定の파일タイプで異なる설정を適用するパターンです。
// prettier.config.mjs
const config = {
// ...基本설정
overrides: [
{
files: "*.json",
options: {
printWidth: 120,
tabWidth: 2,
},
},
{
files: "*.md",
options: {
proseWrap: "always",
printWidth: 80,
},
},
{
files: "*.yml",
options: {
tabWidth: 2,
singleQuote: false,
},
},
{
files: ["*.css", "*.scss"],
options: {
singleQuote: false,
},
},
{
files: "*.svg",
options: {
parser: "html",
},
},
],
};
export default config;
ESLintとの연동
ESLintとPrettierの競合を解消する설정です。
// eslint.config.mjs
import eslintConfigPrettier from "eslint-config-prettier";
export default [
// ...他のESLint설정
// Prettierと競合するルールを무효化(最後に配置)
eslintConfigPrettier,
];
エディタ통합
VS Codeでの저장時自動フォーマットを설정します。
// .vscode/settings.json
{
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true,
"editor.formatOnPaste": false,
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[json]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[markdown]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[css]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
}
}
npm scriptsの설정
よく使うコマンドをスクリプトに등록します。
// package.json
{
"scripts": {
"format": "prettier --write .",
"format:check": "prettier --check .",
"format:staged": "prettier --write --list-different"
}
}
Prettierの설정を選ぶ際のポイント
Claude Code에설정を依頼する際に考慮すべき点をまとめます。
- printWidth - 80が標準的。モニターサイズやチームの好みで調整
- semi - セミコロンの有無。프로젝트全体で統一する
- singleQuote - JSX를 사용하는場合はdoubleQuoteが一般的
- trailingComma -
"all"がTypeScript프로젝트では推奨 - endOfLine - クロスプラット폼개발では
"lf"を推奨
重要なのは、チーム内で「どの설정にするか」を一度決めたら、以降はPrettierに任せて스타일の議論に시간を使わないことです。
정리
Prettierは설정が少ないからこそ、一度설정すれば継続的にコード스타일を統一してくれます。Claude Codeを활용すれば、플러그인選定、overrides설정、エディタ통합まで短시간で最適な구성を구축가능합니다。
ESLintとの연동はESLint설정최적화가이드を、コミット時の自動実行はHusky + lint-staged설정가이드를 참고하세요.Prettier공식 문서도 확인해 두세요.
Related Posts
Claude Code 생산성을 3배로 높이는 10가지 팁
Claude Code를 더 효과적으로 활용하는 10가지 실전 팁을 공개합니다. 프롬프트 전략부터 워크플로 단축키까지, 오늘부터 바로 적용해 보세요.
Canvas/WebGL Optimization: Claude Code 활용 가이드
canvas/webgl optimization: Claude Code 활용. 실용적인 팁과 코드 예시를 포함합니다.
Markdown Implementation: Claude Code 활용 가이드
markdown implementation: Claude Code 활용. 실용적인 팁과 코드 예시를 포함합니다.