tanstack-start-best-practices について
TanStack StartでフルスタックReactアプリを開発するためのスキルです。サーバー関数、セキュリティ、ミドルウェア、認証、SSR、エラー処理、デプロイの実装ルールと例をまとめています。
主な機能
- 01サーバー関数のパターンと入力検証
- 02セキュリティと入力処理の指針
- 03ミドルウェアと認証のパターン
- 04SSRとハイドレーションの指針
- 05エラー処理とデプロイルール
活用シーン
- 01サーバー側のデータ更新の実装
- 02認証とルート保護の追加
- 03SSRとデプロイの設定
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ pedronauck/ skills --skill tanstack-start-best-practicesインストール後、Claude Code で/tanstack-start-best-practicesを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
rules/api-routes.mdauth-route-protection.mdauth-session-management.mddeploy-adapters.mdenv-functions.mderr-server-errors.mdfile-separation.mdmw-request-middleware.mdsf-create-server-fn.mdsf-input-validation.mdssr-hydration-safety.mdssr-prerender.mdssr-streaming.md詳細
TanStack Start のベストプラクティス
フルスタック React アプリケーションで TanStack Start のパターンを実装するための包括的なガイドラインです。これらのルールでは、サーバー関数、ミドルウェア、SSR、認証、デプロイを扱います。
適用する場面
- データ変更用のサーバー関数を作成するとき
- 認証やロギング用のミドルウェアを設定するとき
- SSR とハイドレーションを設定するとき
- 認証フローを実装するとき
- クライアントとサーバーの境界をまたぐエラーを処理するとき
- フルスタックコードを整理するとき
- さまざまなプラットフォームにデプロイするとき
優先度別ルールカテゴリ
| 優先度 | カテゴリ | ルール | 影響 |
|---|---|---|---|
| CRITICAL | サーバー関数 | 5 ルール | 中核となるデータ変更パターン |
| CRITICAL | セキュリティ | 4 ルール | 脆弱性を防止 |
| HIGH | ミドルウェア | 4 ルール | リクエスト/レスポンスの処理 |
| HIGH | 認証 | 4 ルール | ユーザーセッションを保護 |
| MEDIUM | API ルート | 1 ルール | 外部エンドポイントのパターン |
| MEDIUM | SSR | 6 ルール | サーバーレンダリングのパターン |
| MEDIUM | エラー処理 | 3 ルール | 障害を適切に処理する |
| MEDIUM | 環境 | 1 ルール | 設定の管理 |
| LOW | ファイル構成 | 3 ルール | 保守しやすいコード構造 |
| LOW | デプロイ | 2 ルール | 本番環境への対応 |
クイックリファレンス
サーバー関数(プレフィックス:sf-)
sf-create-server-fn— サーバーサイドのロジックには createServerFn を使用するsf-input-validation— サーバー関数の入力は必ず検証するsf-method-selection— 適切な HTTP メソッドを選択するsf-error-handling— サーバー関数内のエラーを処理するsf-response-headers— 必要に応じてレスポンスヘッダーをカスタマイズする
セキュリティ(プレフィックス:sec-)
sec-validate-inputs— すべてのユーザー入力をスキーマで検証するsec-auth-middleware— 認証ミドルウェアでルートを保護するsec-sensitive-data— シークレットはサーバーサイドだけに保持するsec-csrf-protection— データ変更に CSRF 対策を実装する
ミドルウェア(プレフィックス:mw-)
mw-request-middleware— 横断的関心事にはリクエストミドルウェアを使用するmw-function-middleware— サーバー関数には関数ミドルウェアを使用するmw-context-flow— ミドルウェアを通じてコンテキストを適切に渡すmw-composability— ミドルウェアを効果的に組み合わせる
認証(プレフィックス:auth-)
auth-session-management— セッションを安全に管理するauth-route-protection— beforeLoad でルートを保護するauth-server-functions— サーバー関数内で認証を検証するauth-cookie-security— セキュアな Cookie 設定を行う
API ルート(プレフィックス:api-)
api-routes— 外部利用者向けの API ルートを作成する
SSR(プレフィックス:ssr-)
ssr-data-loading— SSR に適した方法でデータを読み込むssr-hydration-safety— ハイドレーションの不一致を防ぐssr-streaming— TTFB を短縮するためにストリーミング SSR を実装するssr-selective— 効果がある場合に選択的 SSR を適用するssr-prerender— 静的プリレンダリングと ISR を設定する
環境(プレフィックス:env-)
env-functions— 設定には環境関数を使用する
エラー処理(プレフィックス:err-)
err-server-errors— サーバー関数のエラーを処理するerr-redirects— リダイレクトを適切に使用するerr-not-found— 見つからない場合のシナリオを処理する
ファイル構成(プレフィックス:file-)
file-separation— サーバーコードとクライアントコードを分離するfile-functions-file— .functions.ts パターンを使用するfile-shared-validation— 検証スキーマを共有する
デプロイ(プレフィックス:deploy-)
deploy-env-config— 環境変数を設定するdeploy-adapters— 適切なデプロイアダプターを選択する
使用方法
rules/ ディレクトリ内の各ルールファイルには、次の内容が含まれています。
- 説明 — このパターンが重要である理由
- 悪い例 — 避けるべきアンチパターン
- 良い例 — 推奨される実装
- コンテキスト — このルールを適用する場合、または適用しない場合
完全なリファレンス
詳しいガイダンスとコード例については、rules/ ディレクトリ内の各ルールファイルを参照してください。
コメント
Markdown 対応