This repository consists of the web project for the CSE-446 course
Develop an e-commerce website with inventory, sales functionality with card payment, administrative and client privileges, etc. A supplier portal for inventory and Order tracking and a bank for all entities to track their balances.
- PostgreSQL - Express.js - React.js - Node.js -
-
3 different modules. created An E-Commerce(Client+Admin), A Supplier and A Bank Site with MERN.
-
Built 3 Interconnecting API endpoints for the 3 stream.
-
Order Tracking
-
Admin must approve every order manually and forward it to 'Supplier'
-
Admin can Add new Product with price.
-
Every SALES transaction:
==>> User Checkout using Online payment ==>> Admin Approves and Gets SUBTOTAL in his account. ==>> Forwards Order to Suppliers and keeps 20% Incentive ==>> Supplier accepts and Order status is 'delivered'
-
Every User/Admin/Suppliers can check their Bank Balance in Bank Server
git clone https://github.com/HaaaSiiiib/E-commerce-website.git
2. Three organizations are three different servers and each one has to be installed and run separately. Assuming you are in the parent (CSE-446) directory or whatever name you cloned the project, do the following.
cd bank
npm install
npm start
cd ..
cd supplier
npm install
npm start
cd ..
cd e-commerce
npm install
npm start
3. There is a dotenv.template
file in each directory. User has to create a .env
file based on the template and set the values of different variables themselves based on their database configuration.
4. This project uses postgres, but it should compatible with most other relational databse dialects that conforms to SQL standard.
Servers will be running on following ports by default.
Bank: http://127.0.0.1:4001
Supplier: http://127.0.0.1:4002
E-commerce: http://127.0.0.1:4003
Bank: https://bank.cse446.ml/swagger
Supplier: https://suppl.cse446.ml/swagger
E-commerce: https://ecom.cse446.ml/swagger
6. There are two front-end sites for this project. Both need to be run separately. Assuming you are in the parent folder, do the following.
cd bank
npm install
yarn start
cd ..
cd e-commerce
npm install
yarn start
Bank: http://127.0.0.1:4004
E-commerce: http://127.0.0.1:4005
Bank: https://bank-frontend.cse446.ml
E-commerce: https://ecom-frontend.cse446.ml