mcpField
M
modern-web-development

modern-web-development

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

modern-web-development について

Brandon Fernandez による、現代的な Web 開発向けの Cursor ルールです。TypeScript、React、Next.js などを使う開発者を対象に、コーディング規約、データ処理、テスト、スタイル、アクセシビリティを扱います。

主な機能

  1. 01TypeScript と関数型コードの規約
  2. 02React と Next.js の開発指針
  3. 03Supabase と GraphQL のデータ処理
  4. 04Tailwind CSS のスタイル指針
  5. 05テスト、アクセシビリティ、ドキュメントの実践

活用シーン

  1. 01TypeScript プロジェクトのコードスタイル統一
  2. 02React と Next.js コンポーネントの設計
  3. 03Supabase のデータアクセスとセキュリティ方針の設計
  4. 04Web インターフェースのテストとアクセシビリティ要件の確認

インストール

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

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

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

詳細

モダンな Web 開発

Brandon Fernandez による、TypeScript、Node.js、Next.js 14、React、Supabase、GraphQL、Tailwind CSS、Radix UI、Shadcn UI を用いたモダンな Web 開発のための包括的な cursor ルールです。

開発の主な原則

コードスタイルとアーキテクチャ
  • 正確な TypeScript の例を用いて、簡潔で技術的な回答を記述します
  • クラスベースのアプローチを避け、関数型かつ宣言型のプログラミングを採用します
  • コードの重複より、反復とモジュール化を優先します
  • 補助動詞を用いた、説明的な変数名を使用します(isLoading、hasError)
  • RORO パターン(オブジェクトを受け取り、オブジェクトを返す)を実装します
JavaScript/TypeScript の標準
  • 純粋関数には function キーワードを使用します
  • セミコロンは省略します
  • TypeScript のみを使用し、型よりインターフェースを優先します
  • ファイルは次の順序で構成します:エクスポートするコンポーネント、サブコンポーネント、ヘルパー、静的コンテンツ、型
  • 条件分岐で不要な波括弧を最小限にします
エラー処理
  • 関数の入口でエラーやエッジケースに対処します
  • 深いネストを避けるため、エラー条件では早期リターンを使用します
  • 可読性を高めるため、成功パスを最後に配置します
  • 前提条件の検証にはガード節を使用します
  • ユーザーにわかりやすいエラーメッセージを実装します

React と Next.js のガイドライン

  • TypeScript インターフェースを用いた関数コンポーネントを使用します
  • function 宣言を用いて宣言型の JSX を記述します
  • Shadcn UI、Radix、Tailwind CSS でスタイルを設定します
  • モバイルファーストのレスポンシブデザインを実装します
  • use client、useEffect、setState の使用を最小限に抑え、React Server Components を優先します
  • フォームのバリデーションには Zod を使用します
  • クライアントコンポーネントを Suspense で囲み、フォールバックを設定します
  • 重要度の低いコンポーネントには動的読み込みを使用します
  • 画像を最適化します(WebP 形式、サイズデータ、遅延読み込み)

データと状態管理

  • データ取得には React Server Components を活用します
  • ウォーターフォールを防ぐため、プリロードパターンを実装します
  • リアルタイム同期と状態管理には Supabase を使用します
  • チャット履歴、レート制限、セッションには Vercel KV の利用を検討します

Supabase と GraphQL

  • データベースとのやり取りやサブスクリプションには Supabase クライアントを使用します
  • Row Level Security(RLS)ポリシーを実装します
  • Supabase Auth、Storage、Edge Functions を活用します
  • 型安全な GraphQL API とのやり取りには Genql を使用します
  • 必要なデータだけを取得するよう GraphQL クエリを最適化します

スタイリングとテスト

スタイリング
  • Tailwind CSS のユーティリティファーストアプローチを適用します
  • コンポーネントのバリアントには Class Variance Authority(CVA)を使用します
テスト
  • ユーティリティとフックのユニットテストを実装します
  • 複雑なコンポーネントのインテグレーションテストを作成します
  • 重要なユーザーフローのエンドツーエンドテストを作成します

アクセシビリティとドキュメント

アクセシビリティ
  • インターフェース全体でキーボード操作を可能にします
  • 適切な ARIA ラベルとセマンティックロールを実装します
  • WCAG に準拠した色のコントラスト比を維持します
ドキュメント
  • IDE のインテリセンス向けに、わかりやすい JSDoc コメントを記述します
  • Supabase のスキーマ、RLS ポリシー、Edge Functions を文書化します

コメント