Open kei615ykhm opened 2 months ago
現在のESLint設定は Next.js の初期設定である { "extends": "next/core-web-vitals" } のみです。
{ "extends": "next/core-web-vitals" }
プロジェクトが進行し、初期ステップとして最小限の機能実装を行う中で、コードの複雑さが増してきました。今後の機能実装において複雑に感じるコードを書く頻度が増える可能性と、以下の懸念が生じています:
これらの懸念に対処し、コードの品質を維持・向上させるため、ESLintの設定を見直し、最適化する必要があると判断しました。
以下の設定を導入することで、TypeScriptのサポートを強化し、コードの一貫性を保ちつつ、開発の負担を最小限に抑えることができます。
必要なパッケージのインストール:
npm install --save-dev @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint-config-prettier prettier
.eslintrc.jsファイルの更新:
.eslintrc.js
module.exports = { extends: [ 'next/core-web-vitals', 'plugin:@typescript-eslint/recommended', 'prettier' ], parser: '@typescript-eslint/parser', plugins: ['@typescript-eslint'], rules: { '@typescript-eslint/no-unused-vars': 'warn', '@typescript-eslint/no-explicit-any': 'warn', 'react-hooks/rules-of-hooks': 'error', 'react-hooks/exhaustive-deps': 'warn' } };
.prettierrcファイルの作成:
.prettierrc
{ "semi": true, "trailingComma": "es5", "singleQuote": true, "tabWidth": 2, "useTabs": false }
VSCode
ESLint
Prettier
npm run lint
今後の開発を進める中で、状況に応じて調整していきます。
※暫定ではありますが、一旦のルール定義は行えたのでPriority: high 🚑を削除しました。
関連Issue
2 プロジェクト構造とライブラリの初期設定
現状
現在のESLint設定は Next.js の初期設定である
{ "extends": "next/core-web-vitals" }
のみです。背景
プロジェクトが進行し、初期ステップとして最小限の機能実装を行う中で、コードの複雑さが増してきました。今後の機能実装において複雑に感じるコードを書く頻度が増える可能性と、以下の懸念が生じています:
これらの懸念に対処し、コードの品質を維持・向上させるため、ESLintの設定を見直し、最適化する必要があると判断しました。
提案
以下の設定を導入することで、TypeScriptのサポートを強化し、コードの一貫性を保ちつつ、開発の負担を最小限に抑えることができます。
必要なパッケージのインストール:
.eslintrc.js
ファイルの更新:.prettierrc
ファイルの作成:タスク
.eslintrc.js
ファイルの設定と更新.prettierrc
ファイルの作成と設定VSCode
の設定を更新し、ESLint
とPrettier
が自動的に更新されるようにするnpm run lint
を実行し、新しい設定が正常機能することを確認する追加の注意点