Skip to content

shubham-mehta-002/ShopCart-E-CommerceWebsite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ShopCart 🏢🛍️

An interactive Single Page Application (SPA) offering all the essential and advanced features of an E-commerce platform. ShopCart not only serves as a seamless shopping platform for users but also includes a dedicated Admin Panel for managing data and operations efficiently.


🎥 Short Video Demo

eCommerce_part2.online-video-cutter.com.1.mp4

🔑 Key Features

  • 🌐 Responsive Design: Ensures a great user experience across devices.
  • 🗂️ Admin Panel: Manage orders, products, and users with ease.
  • 🔄 Order Edit: Update order statuses or details seamlessly.
  • 🛠️ Product Management: Edit or add products directly via the admin panel.
  • ➕ Pagination: Handles large datasets efficiently by organizing them into pages.
  • 🔒 Authentication: Secure user access with refresh and access tokens.
  • 📊 State Management: Powered by Redux Toolkit and AsyncThunk for efficient data handling.
  • ⚠️ Error Handling: User-friendly error alerts through toast notifications.
  • 🔐 Password Reset: Secure password reset via one-time tokens.
  • 📧 Email Notifications: Automatic emails for password resets and order confirmations.
  • 🎨 Product Variations: Supports multiple product options, including colors.
  • 🔑 Secure Data: Encrypted passwords in the backend for enhanced security.

🚀 Future Updates

  • ⚡ Payment Gateway Integration: Enable secure online payments directly through the platform.

🛠️ Tech Stack

Frontend Backend Libraries/Frameworks
React
React
Node.js
Node.js
Nodemailer
Nodemailer
Redux
React-Redux + AsyncThunk
Express.js
Express.js
Toastify
Toastify
Tailwind CSS
Tailwind CSS
MongoDB
MongoDB

💻 Getting Started

Prerequisites

Before you begin, ensure that you have the following installed:

  1. Node.js: Download Node.js
  2. MongoDB: Download MongoDB
  3. Git: Download Git

🚀 Running ShopCart on Your Local Machine

Follow these steps to get ShopCart running on your local machine:

  1. Clone the repository:

    git clone https://github.com/shubham-mehta-002/ShopCart-E-CommerceWebsite.git
  2. Navigate to the project directory:

    cd ShopCart-E-CommerceWebsite
  3. Install dependencies for both backend and frontend:

    • Install backend dependencies:

      cd Backend
      npm install
    • Install frontend dependencies:

      cd ../Frontend
      npm install
  4. Set up environment variables: Create .env file in backend with the necessary values.
    Here's a sample configuration:

    Backend .env:

    # Backend Environment Variables
    PORT=
    MONGODB_URI=
    
    
    ...(refer from .env.example file in Backend folder)
  5. Run the project:

    • Run the backend server:
      cd Backend
      npm run dev
    • Run the frontend:
      cd ../Frontend
      npm run dev

👤 Contributing

We welcome contributions to make ShopCart even better! Here’s how you can help:

  1. Fork the Repository: Create your own copy of the repository by clicking the "Fork" button.
  2. Clone the Repository: Clone your forked repository to your local machine using:
    git clone https://github.com/<your-username>/shopcart.git
  3. Create a New Branch: Create a new branch for your feature or bugfix:
    git checkout -b feature/your-feature-name
  4. Make Changes: Add your changes and commit them with clear messages.
    git commit -m "Add: Your feature description"
  5. Push to Your Fork: Push the changes to your forked repository:
    git push origin feature/your-feature-name
  6. Create a Pull Request: Submit a pull request to the main repository with a clear description of your changes.

Guidelines:

  • Ensure your code is well-tested and adheres to the project’s coding standards.
  • Write clear commit messages.
  • Provide detailed descriptions in your pull requests.

🔍 Find Me Here

LinkedIn GitHub Twitter Hashnode Email