An e-commerce web application with a product catalog, cart, checkout, customer reviews, authentication, product searching and different product sorting options. Session persistence of the cart is also implemented for unauthenticated users. Customer support live chat implemented using React Hooks and Firebase Realtime Database.
Demo: https://youtu.be/8WrbguKxzbk
- PostgreSQL
Fork and clone this repository. Then execute the following:
npm install
If postgres CLI tools installed, run createdb the-virtual-mall-app
in terminal, or create a database in the postgres GUI with the name the-virtual-mall-app
Running npm run start-dev
will make great things happen!
If you want to run the server and/or webpack
separately, you can also
npm run start-server
and npm run build-client
.
- Node.js - Javascript Environment
- Express.js - web framework used to setup server
- React - Front end framework for developing our web app
- Redux.js - state management
- PostgreSQL - SQL database used to store long term, relation user information
- Sequelize - promise-based Node.js ORM for Postgres
- Semantic UI React - React integration for Semantic UI, a front-end development framework
- Stripe - APIs for payment processing
- Firebase - a cloud-hosted, NoSQL database
This project is licensed under the MIT License.