Setting up Prettier
关于
This skill automatically configures Prettier for JavaScript/TypeScript projects with recommended settings. It handles installation, creates configuration files, and sets up ESLint integration when needed. Use it when adding code formatting to new or existing projects to ensure consistent code style.
技能文档
Setting up Prettier
あらゆるJavaScript/TypeScriptプロジェクトでPrettierを導入・設定するスキル。
いつ使うか
- 新規プロジェクトにPrettierを導入する時
- 既存プロジェクトにコードフォーマッターを追加する時
- コードフォーマット設定が必要な時
- チーム開発でコードスタイルを統一したい時
- ユーザーが「Prettierセットアップ」「フォーマッター設定」について言及した時
セットアップ手順
1. Prettierのインストール
基本パッケージ(必須):
pnpm add -D prettier
ESLintと併用する場合(推奨):
pnpm add -D prettier eslint-config-prettier
パッケージの役割:
prettier: コードフォーマッター本体eslint-config-prettier: ESLintとPrettierの競合を防ぐ(ESLint使用時のみ)
2. プロジェクト固有のプラグイン(任意)
プロジェクトに応じて追加:
# Tailwind CSS を使用している場合
pnpm add -D prettier-plugin-tailwindcss
# Svelte を使用している場合
pnpm add -D prettier-plugin-svelte
# その他のプラグインも必要に応じて追加可能
3. 設定ファイルの作成
.prettierrc.json
プロジェクトルートに作成(推奨設定):
{
"semi": true,
"singleQuote": true,
"trailingComma": "es5",
"tabWidth": 2,
"useTabs": false,
"printWidth": 100,
"bracketSpacing": true,
"arrowParens": "always"
}
設定項目の説明:
semi: セミコロンを付ける(true推奨)singleQuote: シングルクォート使用(チーム次第)trailingComma: 末尾カンマ("es5"推奨)tabWidth: インデント幅(2または4)printWidth: 1行の最大文字数(80-120推奨)
.prettierignore(任意)
フォーマット対象外のファイルを指定:
# dependencies
node_modules
.pnp
.pnp.js
# builds
dist
build
.next
out
# misc
.DS_Store
*.log
.env*
# lock files
pnpm-lock.yaml
package-lock.json
yarn.lock
4. ESLintとの統合(ESLint使用時)
.eslintrc.json を更新して、Prettierとの競合を防ぐ:
既存の設定がある場合:
{
"extends": [
"existing-config",
"prettier" // ← 最後に追加(重要)
]
}
Next.jsの場合の例:
{
"extends": ["next/core-web-vitals", "prettier"]
}
Reactの場合の例:
{
"extends": ["react-app", "prettier"]
}
5. package.json スクリプトの追加
{
"scripts": {
"format": "prettier --write .",
"format:check": "prettier --check ."
}
}
使い方:
pnpm run format: 全ファイルをフォーマットpnpm run format:check: フォーマットチェックのみ(CI用)
6. VS Code 設定の推奨
.vscode/settings.json を作成(任意だが推奨):
{
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[javascriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[json]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
}
}
完全なセットアップフロー
新規プロジェクト
# 1. プロジェクト作成(例:Vite)
pnpm create vite my-app
# 2. ディレクトリ移動
cd my-app
# 3. Prettier追加
pnpm add -D prettier eslint-config-prettier
# 4. 設定ファイル作成
# (このスキルが自動で作成)
# 5. フォーマット実行
pnpm run format
既存プロジェクト
# 1. Prettier追加
pnpm add -D prettier eslint-config-prettier
# 2. 設定ファイル追加
# (このスキルが自動で作成)
# 3. ESLint設定更新(使用している場合)
# (このスキルが自動で更新)
# 4. フォーマット実行
pnpm run format
プロジェクトタイプ別の推奨設定
React / Next.js
pnpm add -D prettier eslint-config-prettier
# Tailwind使用時は追加
pnpm add -D prettier-plugin-tailwindcss
Vue / Nuxt
pnpm add -D prettier eslint-config-prettier
Svelte / SvelteKit
pnpm add -D prettier prettier-plugin-svelte eslint-config-prettier
Node.js / Express
pnpm add -D prettier eslint-config-prettier
設定ファイルテンプレート
詳細なテンプレートは templates/ を参照。
チェックリスト
セットアップ完了前に確認:
- Prettierがインストールされているか
-
.prettierrc.jsonが作成されているか -
.prettierignoreが作成されているか(任意) - ESLint使用時は
.eslintrc.jsonにprettierが追加されているか - package.json に format スクリプトが追加されているか
-
pnpm run formatが正常に動作するか -
.vscode/settings.jsonの作成を検討したか
トラブルシューティング
フォーマットが効かない
- VS Code拡張がインストールされているか確認
- Prettier - Code formatter (
esbenp.prettier-vscode)
- Prettier - Code formatter (
- 設定ファイルの構文エラーを確認
.prettierrc.jsonの JSON構文
- ESLintとの競合を確認
eslint-config-prettierがインストールされているか.eslintrc.jsonの extends に"prettier"が最後に追加されているか
特定のファイルがフォーマットされない
.prettierignoreで除外されていないか確認- ファイルの拡張子がPrettierでサポートされているか確認
- プラグインが必要な場合は追加(例:.svelte ファイル)
保存時にフォーマットされない
- VS Codeの設定を確認
"editor.formatOnSave": trueが設定されているか"editor.defaultFormatter"が正しく設定されているか
- ワークスペース設定とユーザー設定の競合確認
Tailwind CSSのクラス順序が整わない
prettier-plugin-tailwindcssがインストールされているか確認.prettierrc.jsonにプラグイン設定を追加(プラグインが自動検出する場合もある)
CI/CD での使用
GitHub Actions 例
- name: Check code formatting
run: pnpm run format:check
Pre-commit Hook(Husky使用時)
pnpm add -D husky lint-staged
# .husky/pre-commit
pnpm lint-staged
// package.json
{
"lint-staged": {
"*.{js,jsx,ts,tsx,json,css,md}": [
"prettier --write"
]
}
}
参考リンク
快速安装
/plugin add https://github.com/camoneart/claude-code/tree/main/setting-up-prettier在 Claude Code 中复制并粘贴此命令以安装该技能
GitHub 仓库
相关推荐技能
analyzing-dependencies
元这个Claude Skill能自动分析项目依赖的安全漏洞、过时包和许可证合规问题。它支持npm、pip、composer、gem和go modules等多种包管理器,帮助开发者识别潜在风险。当您需要检查依赖安全性、更新过时包或确保许可证兼容时,可使用"check dependencies"等触发短语来调用。
work-execution-principles
其他这个Claude Skill为开发者提供了一套通用的工作执行原则,涵盖任务分解、范围确定、测试策略和依赖管理。它确保开发活动中的一致质量标准,适用于代码审查、工作规划和架构决策等场景。该技能与所有编程语言和框架兼容,帮助开发者系统化地组织代码结构和定义工作边界。
Git Commit Helper
元Git Commit Helper能通过分析git diff自动生成规范的提交信息,适用于开发者编写提交消息或审查暂存区变更时。它能识别代码变更类型并自动匹配Conventional Commits规范,提供包含功能类型、作用域和描述的标准化消息。开发者只需提供git diff内容即可获得即用型的提交消息建议。
algorithmic-art
元该Skill使用p5.js创建包含种子随机性和交互参数探索的算法艺术,适用于生成艺术、流场或粒子系统等需求。它能自动生成算法哲学文档(.md)和对应的交互式艺术代码(.html/.js),确保作品原创性避免侵权。开发者可通过定义计算美学理念快速获得可交互的艺术实现方案。
