Skip to content
This repository has been archived by the owner on Oct 14, 2024. It is now read-only.

harishsemwal/E-Commerce-MegaMart

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 

Repository files navigation

E-Commerce MegaMart

Welcome to the E-Commerce MegaMart project! This is a comprehensive e-commerce application showcasing both front-end and back-end development skills. The project is designed to provide a seamless shopping experience, complete with user authentication, product management, and a fully functional admin panel.

🚀 Demo

Check out the video demos of the Admin Page and Home Page:

📂 Project Overview

The E-Commerce MegaMart project is built using the MERN stack, which includes:

  • MongoDB: Database for storing product details, user information, and order data.
  • Express.js: Backend framework for building the server-side application.
  • React.js: Frontend framework for developing a responsive and interactive user interface.
  • Node.js: Runtime environment for building the server-side logic.

🛠️ Features

  • User Authentication with JWT: Secure user login and registration using JSON Web Tokens (JWT) to maintain user sessions.
  • RESTful API: Built using Express.js, providing clean and structured endpoints for efficient client-server communication.
  • Product Management: Admin can add, update, or delete products.
  • Order Management: Users can view their orders; Admin can manage order statuses.
  • Responsive Design: Optimized for both desktop and mobile devices.

📸 Screenshots

Screenshot 2024-09-03 001414 Screenshot 2024-09-03 001431 Screenshot 2024-09-03 001450 Screenshot 2024-09-03 001517 Screenshot 2024-09-03 001650

Admin

Screenshot 2024-09-03 001735 Screenshot 2024-09-03 001750

📂 Folder Structure

  • frontend/: Contains the React frontend code.
  • backend/: Contains the Express backend code.
  • admin/: Contains the admin panel code using React.

🛠️ Installation and Setup

To run the project locally, follow these steps:

  1. Clone the repository:

    git clone https://github.com/harishsemwal/E-Commerce-MegaMart.git
    cd E-Commerce-MegaMart
  2. Install dependencies:

    cd frontend
    npm install
    cd ../backend
    npm install
    cd ../admin
    yarn install
  3. Run the development servers:

    Open three terminal windows or use three terminal tabs:

    Frontend:

    cd frontend
    npm start

    Backend:

    cd backend
    npm run dev

    Admin Panel:

    cd admin
    yarn run dev
  4. Open your browser and navigate to:

    http://localhost:3000
    

📊 RESTful API Endpoints

The backend API is designed following REST principles. Here are some key endpoints:

  • User Authentication:

    • POST /api/auth/register: Register a new user.
    • POST /api/auth/login: Authenticate a user and issue a JWT.
    • GET /api/auth/logout: Invalidate the user's session.
  • Product Management:

    • GET /api/products: Retrieve a list of products.
    • POST /api/products: Add a new product (Admin only).
    • PUT /api/products/:id: Update an existing product (Admin only).
    • DELETE /api/products/:id: Delete a product (Admin only).
  • Order Management:

    • GET /api/orders: Retrieve user orders.
    • POST /api/orders: Place a new order.
    • PUT /api/orders/:id: Update order status (Admin only).

🚀 Deployment

To deploy the application, follow the deployment guidelines for your hosting provider. Ensure that the environment variables are properly configured for production.

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

🤝 Contributing

Contributions are welcome! Feel free to open an issue or submit a pull request.

📧 Contact

For any questions or feedback, feel free to contact Harish Prasad Semwal.


Feel free to make any more changes or ask for further customizations!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published