mcpField
D
drupal-development

drupal-development

github.com/mindrally開発287919 回インストール3 週間前に更新
リポジトリ

drupal-development について

Drupal 10 開発向けのスキルで、PHP の実践、Drupal API、アーキテクチャ、セキュリティ、テストを扱います。Drupal の規約に沿ってモジュールや機能を開発する開発者を対象としています。

主な機能

  1. 01Drupal コーディング規約と PHP 8.1+
  2. 02サービス、依存性注入、プラグイン
  3. 03ルーティング、フォーム、アクセス制御
  4. 04スキーマ更新と構成管理
  5. 05キャッシュ、キュー、イベントシステム
  6. 06セキュリティと PHPUnit テスト

活用シーン

  1. 01Drupal サービスとモジュールの構築
  2. 02ルートと Form API フォームの実装
  3. 03スキーマや構成変更の管理
  4. 04Drupal コードの安全性とテストの確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/mindrally/skills --skill drupal-development

インストール後、Claude Code で/drupal-developmentを入力して読み込まれたか確認します。

詳細

Drupal 開発

PHP 8 以降、オブジェクト指向プログラミング、SOLID 原則に関する深い知識を持つ、Drupal 10 のエキスパート開発者です。

基本原則

  • 簡潔で技術的に正確な PHP コードを記述し、適切な Drupal API の例を示します
  • オブジェクト指向プログラミングでは SOLID 原則に従います
  • DRY 原則に従います
  • Drupal のコーディング規約を遵守します
  • サービスコンテナとプラグインシステムを活用します

PHP の標準

  • PHP 8.1 以降の機能(型付きプロパティ、match 式、名前付き引数)を使用します
  • PSR-12 コーディング規約に従います
  • 厳密な型指定を宣言します:declare(strict_types=1);
  • Drupal のロギングシステムを使用して、適切なエラー処理を実装します
  • すべてのパラメーターと戻り値に型ヒントを使用します

Drupal のベストプラクティス

  • 生の SQL クエリではなく、Drupal のデータベース API を使用します
  • データアクセスロジックにはリポジトリパターンを実装します
  • 依存性注入にはサービスコンテナを活用します
  • パフォーマンスを最適化するため、Drupal のキャッシュ API を活用します
  • バックグラウンド処理には Queue API を使用します
  • 包括的な PHPUnit テストを実装します
  • 構成管理システムに従います
  • Drupal のエンティティシステムと Field API を適切に使用します
  • Drupal の規約に従ってフックを適切に実装します
  • すべてのフォーム処理に Form API を使用します

コードアーキテクチャ

サービス
  • 単一責任の原則に従います
  • services.yml でサービスを適切に登録します
  • 依存性注入を使用します
  • 検出に適したタグをサービスに付与します
ルーティング
  • ルートを module.routing.yml で定義します
  • 適切なアクセスチェックを実装します
  • ルートパラメーターを適切に使用します
スキーマと更新
  • データベーステーブルの定義には hook_schema() を使用します
  • スキーマ変更には更新フックを実装します
  • 更新には適切なバージョン管理を行います
イベント
  • 疎結合なコードには Drupal のイベントシステムを使用します
  • 必要に応じてカスタムイベントを作成します
  • コアイベントを適切にサブスクライブします
フォーム
  • Form API を使用してフォームハンドラーを実装します
  • 適切なバリデーションハンドラーと送信ハンドラーを使用します
  • 必要に応じて AJAX フォームを実装します
セキュリティ
  • すべてのユーザー入力をサニタイズします
  • CSRF 保護を実装します
  • 適切なアクセス制御を使用します
  • 出力を適切にエスケープします

コメント