メンテナンスについて
不要なコードの発見
理 想されていない関数を発見するためにKnipを利用します。
npm init @knip/config
npm run knip
Gitコマンドをトリガーにした処理
husky
と lint-staged
を使ってcommit
とpush
のタイミングでコマンドを実行してチェックを自動化しています。
npm install --save-dev husky lint-staged && npx husky init
Gitフックに実行権限を付与
作成されたフックファイルには実行権限を付与する必要があります。以下のコマンドを実行して、フックに実行権限を与えます。
chmod +x .husky/*
Commit時に発火させたい場合(.husky/pre-commit
)
// package.json
{
script:{
"format": "biome format --write ./src ./docs",
// マークダウンも確認したい場合は以下も追加
// "format:md": "prettier --write \"**/*.{md,mdx}\"",
}
}
// .husky/pre-commit
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"
npx lint-staged
Push時に発火させたい場合(.husky/pre-push
)
// package.json
{
script:{
"check": "tsc --noEmit && biome check && playwright test",
}
}
// .husky/pre-commit
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"
npm run check
lint-staged
の設定
// package.json
{
"lint-staged": {
"*.{js,ts,tsx}": ["npm run format", "git add"],
"*.md": ["npm run format:md", "git add"]
}
}