coding_conventions.md 2.1 KB

コーディング規約とスタイルガイド

Linter・フォーマッター設定

Biome設定(統一予定)

  • 適用範囲:
    • dist/, node_modules/, coverage/ などは除外
    • .next/, bin/, config/ などのビルド成果物は除外
    • package.json などの設定ファイルは除外
  • 推奨: 新規開発では Biome を使用

TypeScript設定

  • ターゲット: ESNext
  • モジュール: ESNext
  • 厳格モード: 有効(strict: true)
  • モジュール解決: Bundler
  • その他:
    • allowJs: true(JSファイルも許可)
    • skipLibCheck: true(型チェックの最適化)
    • isolatedModules: true(単独モジュールとしてコンパイル)

Stylelint設定

  • SCSS/CSSファイルに対して適用
  • recess-order設定を使用(プロパティの順序規定)
  • recommended-scss設定を適用

ファイル命名規則

  • TypeScript/JavaScriptファイル: キャメルケースまたはケバブケース
  • コンポーネントファイル: PascalCase(Reactコンポーネント)
  • 設定ファイル: ドット記法(.biome.json など)

テストファイル命名規則(Vitest)

vitest.workspace.mts の設定に基づく:

単体テスト(Unit Test)

  • ファイル名: *.spec.{ts,js}
  • 環境: Node.js
  • : utils.spec.ts, helper.spec.js

統合テスト(Integration Test)

  • ファイル名: *.integ.ts
  • 環境: Node.js(MongoDB設定あり)
  • : api.integ.ts, service.integ.ts

コンポーネントテスト(Component Test)

  • ファイル名: *.spec.{tsx,jsx}
  • 環境: happy-dom
  • : Button.spec.tsx, Modal.spec.jsx

ディレクトリ構造の規則

  • src/: ソースコード
  • test/: Jest用の古いテストファイル(廃止予定)
  • test-with-vite/: Vitest用の新しいテストファイル
  • playwright/: E2Eテストファイル
  • config/: 設定ファイル
  • public/: 静的ファイル
  • dist/: ビルド出力

移行ガイドライン

  • 新規開発: Biome + Vitest を使用
  • 既存コード: 段階的に Jest → Vitest に移行