This project is part of the Frontend Web Developer Nanodegree (full Google scholarship). This project's purose is to build a book tracking application using ReactJS, focusing on components, props and state.
A starter code containing the app main style, the Udacity's BooksAPI and a list of some keywords have been provided. The requirement for pass the project was to show the books in three different shelves, to delete eventually a book selecting 'none' and to search into a book database via BooksAPI.
IMPORTANT: The backend API uses a fixed set of cached search results and is limited to a particular set of search terms, which can be found in SEARCH_TERMS.md. That list of terms are the only terms that will work with the backend, so don't be surprised if your searches for Basket Weaving or Bubble Wrap don't come back with any results.
This project was bootstrapped with Create React App. You can find more information on how to perform common tasks here.
You can clone this repository or download it as a .zip file.
Once downloaded, you need to run npm install
and then npm start
in your console.
You can find a live version of the project here!. Enjoy
You can find the full list ofthe reuirement visiting Udacity's Project Rubric Link.
The project is created starting from the original Udacity's Project.
I've used the following resources in order to complete the project:
JavaScript Library
- ReactJS. The whole project is based on React
- React Router. A third party router for React
- Sort By. A useful plugin to sort results from array
- Prop Types. Runtime type checking for React props and similar objects.
- Debounce Input. Add a delay to the input field, useful to avoid to request multiple time to the server every type.
All suggestions and tips will be more than appreciated but, as general rule, no pull requested are normally accepted.