A Project App implemented with React and React Router and bootstrapped with Create React App.
-
Review books from different shelves: Currently Reading, Want to Read, Read;
-
Move books between different shelves: Currently Reading, Want to Read, Read and None;
-
Search books from resources based on Google Books API.
Click the bottom right plus
icon to start searching most books, suggestions appears when typing. Just have fun!
Visit the project demo at this URL: https://my-reads-sewquuiczv.now.sh.
├── README.md
├── package.json
├── public
│ ├── favicon.ico
│ ├── index.html
│ └── manifest.json
├── src
│ ├── App.css
│ ├── App.js
│ ├── App.test.js
│ ├── BooksAPI.js
│ ├── icons
│ │ ├── add.svg
│ │ ├── arrow-back.svg
│ │ └── arrow-drop-down.svg
│ ├── index.css
│ ├── index.js
│ └── registerServiceWorker.js
└── yarn.lock
- Branch and/or clone the repo locally.
- cd into it
- install all the require packages:
npm i
- build the project:
npm run build
- start the project:
npm start
-
React
-
React Router
-
Fetch API
Since the project is bootstrapped with create-react-app, please read its documentation details here: Documentation.
This project app is a good example of using Pure React
. what's more, in this app, I had heavily used the new Context API (rather than choosing Redux) which I found quit useful and convenient.
I made all components under React Strict Mode but warning messages always appears since the React Router itself didn't come up updating with the new react lifecycle.
Finally, this project is developed at the foundation of reactnd-project-myreads-starter which is very helpful. I had done my best to optimize the major part codes and made it more simple and readable.