ElectroKart ⚡

An Online E-commerce App built with React and Node.js.

Table of Contents

  1. Project Overview
  2. Features
  3. Tech Stack
  4. Installation
  5. Usage
  6. Contributing
  7. Pull Request Guidelines
  8. Code of Conduct

1. Project Overview

ElectroKart is an online e-commerce application designed to offer a seamless shopping experience. Built with React for the frontend and Node.js for the backend, ElectroKart enables users to browse and purchase products with ease.

2. Features

  • Product Browsing: View and filter products by category, price, and popularity.
  • User Authentication: Secure login and signup functionality with JWT authentication.
  • Shopping Cart: Add items to a cart, view cart summary, and proceed to checkout.
  • Payment Gateway: Integrated payment options using Stripe (or any preferred payment gateway).
  • Order Tracking: Keep track of placed orders with status updates.
  • Responsive Design: Optimized for both mobile and desktop experiences.

3. Tech Stack

  • Frontend:

    • React
    • Redux
    • HTML5
    • CSS3
  • Backend:

    • Node.js
    • Express.js
  • Database:

    • MongoDB
  • Authentication:

    • JWT

4. Installation

Follow these steps to set up ElectroKart locally:

Prerequisites

  • Node.js (version >= 14.x)
  • npm (version >= 6.x)

You can check if Node.js and npm are installed by running:

node -v
npm -v

Steps to Install ElectroKart

1. Clone the repository:

git clone https://github.com/<your-github-username>/ElectroKart.git

2. Navigate to the project directory

cd ElectroKart

3. Install the dependencies:

  • For Frontend:
cd frontend
npm install
npm start
  • For Backend:
cd backend
npm install
node index.js

4.Start the application:

npm start

5. Usage

Once you have set up the project, you can:

  • Run the development server: The app will run at http://localhost:3000/ for the frontend.
  • Explore app features: Browse products, add items to the cart, and proceed to checkout.
  • Test with sample data: Use provided sample data or mock APIs for testing the functionality.

6. Contributing 🤝

We welcome contributions from everyone! If you would like to contribute to ElectroKart, please follow these steps:

  1. Fork the repository: Click the 'Fork' button at the top right of the page to create a copy of this repository in your account.
  2. Clone your fork: Use the command below to clone your forked repository to your local machine.
   git clone https://github.com/<your-github-username>/ElectroKart.git

For more detailed guidelines, please refer to our full Contributing.md.

7. Pull Request Review Criteria 🧲

  1. Please fill out the PR template properly when creating a pull request.
  2. Assign yourself to the issue you’re working on to help us track progress.
  3. Never commit to the main branch.
  4. Your work must be original and adhere to the project's coding standards.
  5. Comment your code where necessary for clarity.
  6. Always ensure all tests pass before pushing your changes by running:
npm run test

8. Code of Conduct 😇

We strive to create a welcoming and inclusive environment for all contributors and users. By participating in this project, you agree to abide by our Code of Conduct.

Our Standards

  1. Respect: Treat everyone with respect, regardless of their background or opinions.
  2. Inclusivity: Encourage and support diverse perspectives and contributions.
  3. Collaboration: Be open to constructive feedback and collaboration.
  4. Professionalism: Maintain professionalism in all interactions, online and offline.

Reporting Issues

If you experience or witness any behavior that violates this Code of Conduct, please report it by contacting the project maintainers.

For more detailed guidelines, please refer to our full Code of Conduct.