This is a React project in a udemy by Li Renmi as following:
https://www.udemy.com/course/react-lean-by-doing/
The project covers basic online store operations except payment process. I like this project because it focuses on practical approach of web application by React, which I found very helpful to understand how everything fixes together in Single Page Application(SPA) using React.
Bulma(https://bulma.io/) is used as basic style sheet to the site, which addes more flavor the project. Bulma is added into the project as a module along with node-sass so that css can be compiled into the project. The below screenshot shows the example of the flaver.
The breakdown of components comes very naturally.
react-route is used to route from page to page.
Axios is used for intercation with Backend REST server.
In traditional webapp, the authentication information is usually stored in session along with cookie, which are not applicable in SPA. JWT(Json Web Token) is the common practice for anthentication instead, where the JWT can be stored into Local storage after authentication, then sent along with further REST request as identification.
the Cart information is stored in state of frontend components, which is syned to the server side database/json file.
Functional components are used along with Hooks to access necessary state information. React-hook-form is used for frontend validation.
A global panel is used as modal to show/add/edit the inventroy detail informaiton.
Express is used along with Json Server to simulate the backend operation. Basically Express is for the authentication and Json Server for Product and cart information which are stored in Json files. Json Web Token module is used for the operation of authentication tokens.
user: admin@163.com pass: admin111