The projects in this repository represent many ways of managing state for the Car Tool application.
To use each project (except the Apollo/GraphQL version), run the following commands:
cd <PROJECT FOLDER>
npm install
npm startFor the Apollo/GraphQL version, run the following commands:
cd <PROJECT FOLDER>
npm install
npm run start-rest-serverNext, open a new terminal window, and run the following commands:
cd <PROJECT FOLDER>
npm run start-graphql-serverFinally, open a third terminal window, and run the following commands:
cd <PROJECT FOLDER>
npm run start-clientFor all projects, once the React application starts it should open your default web browser and load the React web site. If it does not, please use this URL in the browser of your choice.
http://localhost:3000The "async" version include the following state managers:
- React Context React Context Docs
- Redux Redux Docs, React Bindings for Redux Docs
- MobX MobX Docs, React Bindings for MobX Docs
- Satchel (Microsoft's combination of Redux and MobX) Satchel Docs
- Apollo/GraphQL Apollo Docs, GraphQL Docs, React Bindings for Apollo Docs
For the Satchel library, there are two synchronous versions which explore the use of actions, mutators and action/mutators.