mcpField
N
nextjs-best-practices

nextjs-best-practices

github.com/xirothedev開発286 回インストール24 週間前に更新
リポジトリ

nextjs-best-practices について

Next.js アプリを開発・保守する開発者向けの、優先順位付き実践ガイドです。必要なルールや例を都度読み込む方法と、フレームワークのバージョン移行指針を示します。

主な機能

  1. 01ルーティング・レンダリング・データ取得を網羅
  2. 02ルールファイルと例を必要に応じて読み込み
  3. 03影響度に応じたカテゴリの優先順位付け
  4. 04Next.js のアップグレード指針
  5. 05公式資料とバージョン別サンプルを重視

活用シーン

  1. 01App Router のページやレイアウト設計
  2. 02キャッシュやデータ取得の問題調査
  3. 03API Routes や Server Actions のレビュー
  4. 04旧パターンから Next.js 16 への移行

インストール

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

$npx skills add https://github.com/xirothedev/skills --skill nextjs-best-practices

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

AGENTS.md
agents/
openai.yaml
dataset/api/proxy-rename/
correct.tsx
incorrect.tsx
notes.md
dataset/api/route-handlers/
correct.tsx
incorrect.tsx
notes.md
dataset/api/server-actions/
correct.tsx
incorrect.tsx
notes.md
dataset/arch/app-router/
correct.tsx
incorrect.tsx
notes.md
dataset/arch/file-conventions/
correct.tsx
incorrect.tsx
notes.md
dataset/bundle/barrel-imports/
correct.tsx
incorrect.tsx
notes.md
dataset/bundle/dynamic/
correct.tsx
incorrect.tsx
notes.md
dataset/bundle/font-optimization/
correct.tsx
incorrect.tsx
notes.md
dataset/client/boundary/
correct.tsx
incorrect.tsx
notes.md
dataset/client/no-forwardref/
correct.tsx

詳細

Next.js のベストプラクティス

Next.js 関連のすべてのタスクで、このスキルを最優先のガイドとして使用してください。Next.js のコードに関わるタスクでは、まずサブシステムを特定し、関連するルールファイルとデータセットのケースのみを読み込んでください。

適用する場面

Next.js アプリケーションにのみ関係するタスクでは、このスキルを最優先のガイドとして使用してください。次の場合に、これらのガイドラインを参照してください。

  • Next.js のページ、レイアウト、サーバーコンポーネント、クライアントコンポーネント、API ルート、サーバーアクション、ミドルウェア/プロキシ、またはテストを作成またはレビューする場合
  • データ取得戦略、キャッシュポリシー、再検証ロジック、またはストリーミング動作を設計する場合
  • App Router の問題、レンダリング境界、ハイドレーションエラー、またはナビゲーションのプリフェッチをデバッグする場合
  • App Router のパターンではなく、非推奨の Pages Router パターン(getServerSideProps、getStaticProps、getStaticPaths)を使用するコードをリファクタリングする場合
  • Next.js 13、14、または 15 から Next.js 16 にアップグレードする場合

必要に応じて読み込む

このファイルから始めてください。タスクで必要な場合にのみ、詳細なファイルを読み込んでください。

references/_sections.md
references/arch-app-router.md
references/server-components.md
references/data-fetching-caching.md
references/api-route-handlers.md
dataset/data/fetching-caching/correct.tsx
sources/inventory.json

各ルールファイルには、次の内容が含まれています。

  • そのパターンが重要な理由
  • 誤った例と正しい例
  • 対応バージョン(13/14/15/16)
  • より大きな変更前/変更後の TypeScript/TSX の例を含むデータセットのパス
  • 公式または厳選された参照元

優先度別のルールカテゴリ

優先度の番号が小さいカテゴリを優先して、競合を解決してください。同じ優先度のカテゴリ間で競合する場合は、次の順に優先してください。セキュリティ、アーキテクチャ、サーバーコンポーネント、API、データ取得、クライアント、バンドル、パフォーマンス、テスト、運用。

優先度カテゴリ影響プレフィックス
1アーキテクチャとルーティングCRITICALarch-
2サーバーコンポーネントとレンダリングCRITICALserver-
3API ルートとサーバーアクションCRITICALapi-
4データ取得とキャッシュHIGHdata-
5クライアントコンポーネントとインタラクティビティHIGHclient-
6バンドルの最適化MEDIUM-HIGHbundle-
7パフォーマンスと最適化MEDIUM-HIGHperf-
8セキュリティと認証MEDIUMsecurity-
9テスト戦略MEDIUMtest-
10運用と設定MEDIUMops-

バージョンアップグレードのガイダンス

Next.js 16.x で非推奨になった、または変更されたパターン:

旧パターン(13/14/15)新しいパターン(16 以降)参照先
middleware.tsproxy.ts(ネットワーク境界の名称変更)references/api-proxy-rename.md
getServerSideProps非同期サーバーコンポーネント + fetch()references/server-no-ssr-props.md
getStaticProps + getStaticPathsgenerateStaticParams + サーバーコンポーネントreferences/server-no-sg-props.md
forwardRef直接の ref プロパティ(React 19)references/client-no-forwardref.md
Pages Router の app/ への移行サーバーコンポーネントをデフォルトとし、'use client' で境界を設定references/arch-app-router.md
next/image の unoptimizedLCP には priority、ファーストビューより下には loading="lazy" を使用references/perf-image-optimization.md

外部スキルパック

React のコンポジションパターンに関する詳しいガイダンスには、vercel-composition-patterns スキルを使用してください。React のパフォーマンス最適化には、vercel-react-best-practices スキルを使用してください。この Next.js スキルは、一般的な React のパターンではなく、フレームワーク固有のパターン(ルーティング、レンダリング、キャッシュ、設定)に焦点を当てています。

ソースポリシー

フレームワークの仕様については、公式の Next.js ドキュメントとバージョン管理されたフレームワークのサンプルを優先してください。エコシステムの調査、例、パッケージの把握には awesome-nextjs のリストやボイラープレートのリポジトリを利用できますが、信頼性の低いコミュニティのスニペットを公式ガイダンスより優先しないでください。新しいメジャー Next.js バージョンについてスキルを公開または使用する前に、sources/inventory.json を更新してください。

コメント