Enhanced Case Study Solution README
-----------------------------------

This version of the case study uses concepts from the
React Components chapter. In particular, it creates
a component tree and stores the app's state in the
root component App.js. The root component passes "props"
down to the child components for display. The root component
also defines callback functions that the child components
invoke as the user manipulates the app: in particular, the
FindDonorForm.

This version was created using the create-react-app npm
package.

To run the application, first open a command prompt and
change to the case-study-server folder and start the server,
which is a Spring Boot RESTful microservice:

gradlew bootRun

Then open another command prompt and change to the case-study
folder and start the npm development server:

npm start

The client React app should start and surface a browser window
that displays the application's user interface.

Note that if you want to deploy the client app to a production
server, from the case-study folder, run:

npm run build

Then copy the contents of the build folder to your production
server. Note that you will likely need to modify the code a bit
so that URLs to the case-study-server resolve. For details on
how to address that issue, see:

https://github.com/facebookincubator/create-react-app/blob/master/packages/react-scripts/template/README.md#proxying-api-requests-in-development
