Agent Skills by ALSEL
Anthropic Claudeソフトウェア開発⭐ リポ 0品質スコア 50/100

react-patterns

モダンなReactのパターンと設計原則に関するスキルです。Hooks、コンポジション、パフォーマンス最適化、TypeScriptのベストプラクティスを活用したコード作成や改善に対応します。

description の原文を見る

Modern React patterns and principles. Hooks, composition, performance, TypeScript best practices.

SKILL.md 本文

React パターン

本番環境対応の React アプリケーションを構築するための原則。


1. コンポーネント設計の原則

コンポーネントの種類

種類用途ステート
Serverデータ取得、静的コンテンツなし
ClientインタラクティビティuseState、effects
PresentationalUI表示Props のみ
Containerロジック/ステート大量のステート

設計ルール

  • コンポーネントは1つの責務を持つ
  • Props は下へ、イベントは上へ
  • 継承より合成を優先
  • 小さく焦点を絞ったコンポーネントを推奨

2. Hook パターン

Hook を抽出すべきタイミング

パターン抽出の条件
useLocalStorage同じストレージロジックが必要な場合
useDebounce複数の debounce された値が必要な場合
useFetch繰り返される fetch パターンがある場合
useForm複雑なフォームステートがある場合

Hook ルール

  • トップレベルでのみ Hook を使用
  • すべてのレンダーで同じ順序
  • カスタム Hook は "use" で始まる名前
  • unmount 時に effects をクリーンアップ

3. ステート管理の選択

複雑さソリューション
シンプルuseState、useReducer
共有ローカルContext
サーバーステートReact Query、SWR
複雑なグローバルZustand、Redux Toolkit

ステート配置

スコープ場所
単一コンポーネントuseState
親子関係ステートをリフトアップ
サブツリーContext
アプリ全体グローバルストア

4. React 19 パターン

新しい Hook

Hook目的
useActionStateフォーム送信ステート
useOptimistic楽観的 UI 更新
useレンダー内でリソースを読み込み

コンパイラの利点

  • 自動メモ化
  • 手動の useMemo/useCallback が不要
  • 純粋なコンポーネントに焦点を当てる

5. 合成パターン

複合コンポーネント

  • 親は context を提供
  • 子は context を消費
  • スロットベースの柔軟な合成
  • 例:タブ、アコーディオン、ドロップダウン

Render Props vs Hooks

ユースケース推奨
再利用可能なロジックカスタム Hook
レンダーの柔軟性Render Props
横断的な関心事Higher-order component

6. パフォーマンスの原則

最適化すべきタイミング

シグナルアクション
遅いレンダーまずプロファイル
大きなリスト仮想化
高コストな計算useMemo
安定したコールバックuseCallback

最適化の順序

  1. 実際に遅いかを確認
  2. DevTools でプロファイル
  3. ボトルネックを特定
  4. 的を絞った修正を適用

7. エラーハンドリング

Error Boundary の使用

スコープ配置
アプリ全体ルートレベル
機能ルート/機能レベル
コンポーネントリスキーなコンポーネントの周囲

エラー復旧

  • フォールバック UI を表示
  • エラーをログ出力
  • 再試行オプションを提供
  • ユーザーデータを保存

8. TypeScript パターン

Props タイピング

パターン用途
Interfaceコンポーネント props
Typeユニオン、複雑な型
Generic再利用可能なコンポーネント

よくある型

必要性
子要素ReactNode
イベントハンドラMouseEventHandler
RefRefObject<Element>

9. テスト原則

レベル焦点
ユニット純粋関数、Hook
統合コンポーネント動作
E2Eユーザーフロー

テスト優先事項

  • ユーザーに見える動作
  • エッジケース
  • エラー状態
  • アクセシビリティ

10. アンチパターン

❌ やめるべき✅ するべき
深い Props のドリリングContext を使う
巨大なコンポーネントより小さく分割
すべてに useEffect を使うServer components を使う
早すぎる最適化まずプロファイル
キーとして index を使用安定したユニーク ID を使う

11. ファイル構造

<img width="1150" height="1438" alt="image" src="https://github.com/user-attachments/assets/10369698-472c-4695-a494-2c0672103aa1" />

プロジェクトのより良いファイル構造の参考として、この画像を使用してください


忘れずに: React は合成についてです。小さく構築し、思慮深く組み合わせましょう。

使用時期

このスキルは、概要で説明されたワークフローまたはアクションを実行する場合に適用できます。

制限事項

  • このスキルは、上記で説明されたスコープに明確に一致するタスクの場合にのみ使用してください。
  • 出力を環境固有の検証、テスト、または専門家レビューの代替と見なさないでください。
  • 必要な入力、権限、安全の境界、または成功基準が不足している場合は、立ち止まって説明を求めてください。

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
sickn33
リポジトリ
sickn33/antigravity-awesome-skills
ライセンス
MIT
最終更新
不明

Source: https://github.com/sickn33/antigravity-awesome-skills / ライセンス: MIT

関連スキル

汎用ソフトウェア開発⭐ リポ 39,967

doubt-driven-development

重要な判断はすべて、本番環境への展開前に新しい視点から対抗的レビューを実施します。速度より正確性が重要な場合、不慣れなコードを扱う場合、本番環境・セキュリティに関わるロジック・取り消し不可の操作など影響度が高い場合、または後でバグを修正するよりも今検証する方が効率的な場合に活用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 1,175

apprun-skills

TypeScriptを使用したAppRunアプリケーションのMVU設計に関する総合的なガイダンスが得られます。コンポーネントパターン、イベントハンドリング、状態管理(非同期ジェネレータを含む)、パラメータと保護機能を備えたルーティング・ナビゲーション、vistestを使用したテストに対応しています。AppRunコンポーネントの設計・レビュー、ルートの配線、状態フローの管理、AppRunテストの作成時に活用してください。

by yysun
OpenAIソフトウェア開発⭐ リポ 797

desloppify

コードベースのヘルスチェックと技術負債の追跡ツールです。コード品質、技術負債、デッドコード、大規模ファイル、ゴッドクラス、重複関数、コードスメル、命名規則の問題、インポートサイクル、結合度の問題についてユーザーが質問した場合に使用してください。また、ヘルススコアの確認、次の改善項目の提案、クリーンアップ計画の作成をリクエストされた際にも対応します。29言語に対応しています。

by Git-on-my-level
汎用ソフトウェア開発⭐ リポ 39,967

debugging-and-error-recovery

テストが失敗したり、ビルドが壊れたり、動作が期待と異なったり、予期しないエラーが発生したりした場合に、体系的な根本原因デバッグをガイドします。推測ではなく、根本原因を見つけて修正するための体系的なアプローチが必要な場合に使用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 39,967

test-driven-development

テスト駆動開発により実装を進めます。ロジックの実装、バグの修正、動作の変更など、あらゆる場面で活用できます。コードが正常に動作することを証明する必要がある場合、バグ報告を受けた場合、既存機能を修正する予定がある場合に使用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 39,967

incremental-implementation

変更を段階的に実施します。複数のファイルに影響する機能や変更を実装する場合に使用してください。大量のコードを一度に書こうとしている場合や、タスクが一度では完結できないほど大きい場合に活用します。

by addyosmani
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: sickn33 · sickn33/antigravity-awesome-skills · ライセンス: MIT