Skip to content

subratamondal1029/techkart

Repository files navigation

TechKart Full-Stack E-commerce Platform

TechKart is a full-stack e-commerce platform built with the MERN stack. It includes both backend APIs and a modern React frontend to provide a complete shopping experience.

📂 Project Structure

  • Backend (API)
    Node.js + Express backend with RESTful APIs, authentication, product & order management, payment integration, and more.

  • Frontend (Client)
    React-based frontend with Redux Toolkit, infinite scrolling, optimistic UI updates, QR code scanning, and responsive design.

🚀 Getting Started

Please refer to the respective README files inside each folder for detailed information about the project:


📋 Prerequisites for 🚀 Running the Project Locally

Before you start, make sure you have the following installed:


🔄 Cloning the Repository

git clone [email protected]:subratamondal1029/techkart.git

⚙️ Configuring Environment Variables

Use the .env.example(frontend) & .env.example(backend) file as a template to create your own .env files:

PORT=8000
ORIGIN=http://localhost
NODE_ENV=production

🏁 Starting the Project

cd techkart
docker compose up -d --build # build and up containers
docker cp ./backup/db/ techkart-mongo:./backup/ # copy mongoDB backup
docker exec -it techkart-mongo bash # connect to mongoDB container
mongorestore --uri="mongodb://localhost:27017" --db="techkart" ./backup/techkart/ # restore mongoDB backup
# 537 document(s) restored successfully. 0 document(s) failed to restore.
# if error "0 document(s) restored successfully. 537 document(s) failed to restore. then"
mongosh
use techkart
db.dropDatabase()
exit
mongorestore --uri="mongodb://localhost:27017" --db="techkart" ./backup/techkart/ # restore mongoDB backup


rm -rf backup/* # remove mongoDB backup (optional)

🧪 Testing User Credentials

Use the following test accounts to log in and explore the platform features:

Role Email Password
user [email protected] @1Iamsubrata
seller [email protected] @1Iamsubrata
shipment [email protected] @1Iamsubrata
delivery [email protected] @1Iamsubrata

Note: These credentials are for testing purposes only. You can also create your own account to explore the full experience.

🤝 Collaborators

Special thanks to everyone who contributed to this project.

Subrata Mondal
Subrata Mondal

📫 Contribute

Here you will explain how other developers can contribute to your project. For example, explaining how can create their branches, which patterns to follow and how to open an pull request

  1. git clone https://github.com/subratamondal1029/techkart.git
  2. git checkout -b feature/NAME
  3. Follow commit patterns
  4. Open a Pull Request explaining the problem solved or feature made, if exists, append screenshot of visual modifications and wait for the review!