A full-stack online store.
- signing up/in/out users with on-the-fly validation
- E-mail address verification
- adding/editing/deleting product cards
- generic pagination
- product cards cart
- filtering product cards
- dark mode
- server simulation
- Only a logged-in user with a verified E-mail address can add, edit, or delete product cards.
- A user can edit or delete only their own product cards.
- Each product card has its main image (first loaded one by default).
- A main image is shown in a synopsis and in the main image frame when exploring a product card.
- A main image can be selected by clicking a product synopsis and then an image from its list of images.
- If the selected main image is not found, the default image is used instead.
- Only other's product cards can be added/removed into/from the cart.
- Product cards in the cart are stored only on the client side.
- Product cards whose names contain all words from the query are shown.
- It allows using the client application in the usual way (with some restrictions) when the server is down using redux store for fake data.
- All the fake data is stored only during one session (period between page refreshes).
git clone https://github.com/monadosquito/store
.cd store/client
.npm run build
.
git clone https://github.com/monadosquito/store
.cd store
. 3.- to run watching the client application
cd client
.npm run start
.
- to run watching the server application
cd client/src/server
.npm run watch start
.
- to run watching the client application
- This application consists of two sub applications, each with its own
package.json
file, so thatclient/src/server/core
is available in both: client
is the client application.client/src/server
is the server application.