Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/major0001/e-commerce_website-alx-project
My ALX Final Project
https://github.com/major0001/e-commerce_website-alx-project
alx alx-africa alx-curriculum alx-software-engineering expressjs mern mongodb nodejs reactjs
Last synced: 3 days ago
JSON representation
My ALX Final Project
- Host: GitHub
- URL: https://github.com/major0001/e-commerce_website-alx-project
- Owner: major0001
- Created: 2024-10-30T23:29:59.000Z (17 days ago)
- Default Branch: main
- Last Pushed: 2024-10-31T12:29:05.000Z (16 days ago)
- Last Synced: 2024-11-13T05:06:43.073Z (3 days ago)
- Topics: alx, alx-africa, alx-curriculum, alx-software-engineering, expressjs, mern, mongodb, nodejs, reactjs
- Language: JavaScript
- Homepage: https://payment-gateway-lilac.vercel.app/
- Size: 39.4 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
E-Commerce Web Application
==========================This is an e-commerce web application built with the MERN (MongoDB, Express.js, React.js, Node.js) stack. The application includes features like user authentication, product search, cart management, and handling of ordered and refunded products.
Features
--------* **User Authentication**: Secure login and signup functionality.
* **Product Search**: Search products and view product details.
* **Cart Management**: Add and remove products from the cart.
* **Order Management**: View ordered and refunded products.
* **Responsive Design**: Fully responsive layout for all devices.
Tech Stack
----------* **Frontend**: React.js
* **Backend**: Node.js, Express.js , Razorpay
* **Database**: MongoDB
* **Styling**: CSS, CSS Modules
Getting Started
---------------### Prerequisites
* Node.js
* npm or yarn
* MongoDB
### Installation
```bash
1.git clone https://github.com/major0001/E-commerce_Website-ALX-Project
1. cd server
2. npm install
3. cd ../client
4. npm install```
### Environment Variables
Create a .env file in the server directory and add the following environment variables:
```
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret
RAZORPAY_KEY_ID=your_razorpay_key_id
RAZORPAY_KEY_SECRET=your_razorpay_key_secret `
```
### Running the Application```bash
1. cd server
2. npm start
3. cd ../client
4. npm start```
API Endpoints
-------------### Authentication
* **POST** /api/v1/signup - Register a new user
* **POST** /api/v1/login - Authenticate user and get token
### Payment
* **GET** /api/v1/getkeyid - Get Razorpay Key ID
* **POST** /api/v1/capturepayment - Capture payment
* **POST** /api/v1/refundpayment - Refund payment
* **GET** /api/v1/fetchallpayments - Fetch all payments
* **GET** /api/v1/getpaymentdetails/:id - Get payment details by ID
* **GET** /api/v1/fetchcarddetails - Fetch card details
* **POST** /api/v1/paymentverification - Verify paymentPOSTMAN LINK - https://www.postman.com/roy707/workspace/shop-cart/collection/32632569-0177389f-3ffc-4d24-a8bb-9c869782bc67?action=share&creator=32632569
### Cart Management
* **POST** /api/v1/addtocart - Add product to cart
* **DELETE** /api/v1/removefromcart - Remove product from cart
* **POST** /api/v1/showcartitems - Show all cart items
### Order Management
* **POST** /api/v1/orderedproducts - Show all ordered products
* **POST** /api/v1/refundedproducts - Show all refunded products### DB Schema
Contribution
------------Feel free to submit issues or pull requests if you have suggestions or improvements.
License
-------This project is licensed under the MIT License.