ライブラリ / SDK
reduxjs/redux avatar
reduxjs/redux

Redux: 予測可能なグローバルステート管理のためのJSライブラリ

予測可能なグローバル状態管理のための JS ライブラリ。 Redux は React または他のビュー ライブラリと一緒に使用できます。

スター 61,486フォーク 15,177TypeScriptMIT

ひと目でわかる

これは何?
READMEは、単一ストアモデル、推奨されるRedux Toolkit層、インストールパス、学習リソース、そしてプロジェクト自身がいつReduxを使うべきかについての指針を説明しています。
誰に向いている?
READMEはReduxを、その上に推奨ツールキットを持つ小さなコアとして提示し、Reduxがすべての状況に適しているわけではないことを明確にしています。新しいアプリの具体的な出発点、異なる学習スタイルのための2つのチュートリアル、そして広い利用を許可するがサポートや保証を約束しないライセンスを提供しています。
商用利用できる?
できます。MIT は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
今もメンテナンスされている?
されています。最後のコミットは 7 日前です。
何の言語で書かれている?
主に TypeScript です(GitHub の言語統計による)。

回答はプロジェクトの GitHub データ(最終同期:2026年9月14日)と当サイトの分析に基づくもので、法的助言ではありません。

オープンソース詳細解説

Redux: 状態モデル: 単一ストア、アクション、純粋なreducer

READMEは、Reduxを予測可能で保守可能なグローバル状態管理のためのJSライブラリとして説明しています。アプリのグローバル状態全体が単一のストア内のオブジェクトツリーに保存されると説明しています。その状態ツリーを変更する唯一の方法は、何が起こったかを記述するオブジェクトであるアクションを作成し、それをストアにディスパッチすることです。reducer関数は純粋関数として記述され、古い状態とアクションに基づいて新しい状態を計算します。READMEの基本例では、Redux ToolkitのcreateSliceとconfigureStoreを使用したカウンタースライスの流れを示しています。Redux Toolkitを使用しても、基盤となるデータフローは同じです。購読者はストアをリッスンでき、アクションオブジェクトがディスパッチされます。

Redux: Redux ToolkitはReduxロジックを書くための推奨方法

READMEは、Redux ToolkitがReduxロジックを書くための公式の推奨アプローチであると述べています。Reduxコアをラップし、Reduxアプリを構築するために不可欠と見なされるパッケージと関数を含んでいます。READMEによると、Redux Toolkitは推奨されるベストプラクティスを組み込み、ほとんどのReduxタスクを簡素化し、一般的な間違いを防ぎ、Reduxアプリケーションを書きやすくします。基本例では、Toolkitを使用すると、元のコアの動作とデータフローに従いながら、より短く読みやすいロジックを書くことができることを示しています。リポジトリはまた、APIリファレンスと使用ガイドのためにredux-toolkit.js.orgへのリンクを提供しています。

Redux: 新しいアプリの開始: テンプレートとインストールコマンド

READMEは、Redux Toolkitで新しいReactアプリを開始するための2つの推奨方法を示しています。Viteの場合、公式のRedux ToolkitとTypeScriptテンプレートを使用し、degitでクローンして抽出できます: `npx degit reduxjs/redux-templates/packages/vite-template-redux my-app`。Next.jsの場合は、`with-redux`テンプレートを指しています: `npx create-next-app --example with-redux my-app`。どちらも、そのビルドツールに合わせてRedux ToolkitとReact-Reduxが設定されています。既存のアプリにRedux Toolkitを追加するには、`npm install @reduxjs/toolkit react-redux`、コアライブラリ単体では`npm install redux`です。公式のReact Nativeテンプレートはまだありません。READMEはコミュニティ製のReact NativeおよびExpoテンプレートへのリンクを提供しています。

Redux: ドキュメント、チュートリアル、コミュニティヘルプ

Reduxコアドキュメントはredux.js.orgにあり、チュートリアル、使用ガイド、FAQ、APIリファレンスがあります。Redux Toolkitのドキュメントはredux-toolkit.js.orgにあります。READMEは2つの学習パスを示しています: Redux Essentialsチュートリアルは、正しい方法でReduxを使用するためのトップダウン的な入門として説明されており、Redux Fundamentalsチュートリアルは、第一原理からReduxの仕組みをボトムアップに説明するものです。質問については、READMEはReactiflux Discordコミュニティの#reduxチャンネルを公式リソースとして指定しています。また、'You Might Not Need Redux'や'The Tao of Redux'など、Reduxを使うべき時期に関するいくつかのブログ記事や議論へのリンクもあります。

Redux: READMEはいつReduxを使うべきと示唆していますか?

READMEには'Before Proceeding Further'というセクションがあり、誰かが言ったからという理由だけでReduxを使わないようアドバイスしています。Reduxが理にかなう3つの状況を挙げています: 時間とともに変化するデータが合理的な量ある、状態の単一の真実の源が必要、またはすべての状態をトップレベルコンポーネントに保持することがもはや十分でない。READMEは、これらのガイドラインは主観的で曖昧であると認めています。なぜなら、Reduxを統合する適切なポイントはユーザーやアプリケーションごとに異なるからです。トレードオフを詳しく説明する外部記事へのリンク、例えば'When (and when not) to reach for Redux'を提供しています。READMEはこれらの基準よりも正確な意思決定手順を提供していません。

Redux: リポジトリの詳細、ライセンス、メンテナンス

リポジトリのメタデータは、プロジェクト言語をTypeScriptと説明し、READMEはReduxコアが約2kB(依存関係を含む)と小さいと述べています。プロジェクトはSemantic Versioningに従い、各リリースと移行手順はGitHub Releasesページに文書化されています。コードはMITライセンスの下でライセンスされ、著作権はDan Abramovに帰属します。MITライセンスのテキストは、著作権表示を含めることを条件に、ソフトウェアのコピーを使用、コピー、変更、マージ、公開、配布、サブライセンス、販売する権利を許可しています。また、ソフトウェアは「現状のまま」提供され、いかなる種類の保証もなく、著者または著作権所有者は請求や損害について責任を負わないと述べています。ライセンスはサポート、セキュリティ、将来のメンテナンスの約束については触れていません。

編集部の結論

READMEはReduxを、その上に推奨ツールキットを持つ小さなコアとして提示し、Reduxがすべての状況に適しているわけではないことを明確にしています。新しいアプリの具体的な出発点、異なる学習スタイルのための2つのチュートリアル、そして広い利用を許可するがサポートや保証を約束しないライセンスを提供しています。

公式情報源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
コミュニティノート

コミュニティノート