tanstack について
TanStack Query、Router、Form の動作を変更する際に参照するガイドスキルです。開発者やコーディングエージェントを関連資料へ案内し、実装時の重要な注意点を示します。
主な機能
- 01トピックに応じた参考資料の選択
- 02Query キーとキャッシュの指針
- 03ミューテーションとデータ取得の指針
- 04ルーターの型付けとデータ読み込みの指針
- 05フォーム検証と送信の指針
活用シーン
- 01Query のキャッシュやミューテーション動作の変更
- 02Query のデータを使うルートローダーの追加
- 03ルーターの検索パラメーターやナビゲーションの更新
- 04Zod 検証を使ったフォームの構築
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ pedronauck/ skills --skill tanstackインストール後、Claude Code で/tanstackを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/form.mdquery-caching.mdquery-errors-performance.mdquery-fetch-patterns.mdquery-keys.mdquery-mutations.mdquery-ssr-offline.mdrouter-data-loading.mdrouter-search-nav.mdrouter-split-errors-context.mdrouter-type-and-org.md詳細
TanStack
変更する API または動作に対応するリファレンスを確認してください。変更が関連する懸念事項にまたがる場合にのみ、隣接するリファレンスを読み込んでください。すでに読んだ関連情報は再利用してください。
分岐
| 次のいずれかに該当する場合 | リファレンス |
|---|---|
| クエリキー/ファクトリーを定義または変更する | references/query-keys.md |
| staleTime、gcTime、無効化、プレースホルダーデータ/初期データを設定する | references/query-caching.md |
| ミューテーション、楽観的更新、またはミューテーション状態を実装する | references/query-mutations.md |
| プリフェッチ、並列クエリ、無限クエリ、またはキャンセルを実装する | references/query-fetch-patterns.md |
| SSR の dehydrate/hydrate、オフラインの networkMode、またはクエリの永続化を実装する | references/query-ssr-offline.md |
| クエリのエラーバウンダリーや select/パフォーマンスを扱う | references/query-errors-performance.md |
ルーターの登録、from の型付け、仮想ルート、またはルーターのデフォルト値を設定する | references/router-type-and-org.md |
| ルートローダー、ensureQueryData、または並列ルート読み込みを実装する | references/router-data-loading.md |
| 検索パラメーター、Link/navigate、ルートマスク、またはプリロードを扱う | references/router-search-nav.md |
| 遅延ルート、not-found、ルートコンテキスト、または認証前の beforeLoad を扱う | references/router-split-errors-context.md |
| TanStack Form のフック、Zod バリデーター、またはフィールドコンポーネントを扱う | references/form.md |
変更する動作に関係する技術ルールを適用してください。
注意点
Query — すべての依存関係を含む配列キーを使用してください。正規キーを通じてミューテーションを整合させてください。権威あるレスポンスを使って更新するか、所有する読み取りモデルでサーバーからの再読み込みが必要な場合は無効化してください。キャッシュへの楽観的な書き込みにはロールバックが必要です。シリアライズできない値をキーに含めないでください。
Router — ルーターの型を登録してください。デフォルト値を指定して検索パラメーターを検証してください(.catch())。Query と組み合わせるローダーでは ensureQueryData を使用してください。return redirect(...) ではなく throw redirect(...) を使用してください。
Form — 型推論のために defaultValues を完全に指定してください。フォームまたはフィールドレベルで Zod を使用してください。エンドポイントのコストと操作上のニーズに合わせて、非同期バリデーターをデバウンスしてください。フィールドエラーには role="alert" を指定してください。送信時には preventDefault を使用してください。