A full-featured ecommerce web application built using the MERN stack (MongoDB, Express.js, React.js, Node.js). It provides a seamless shopping experience with user authentication, product browsing, cart management, order processing, and secure payments via Razorpay. Includes Google OAuth login and a powerful admin dashboard.
- ✅ User Authentication (Register/Login/Logout)
- 🔐 Google OAuth 2.0 Login
- 🛍️ Product Browsing with Categories & Filters
- 🔎 Search Functionality
- 🛒 Add to Cart / Remove from Cart
- ✏️ Update Cart Quantities
- 💸 Razorpay Payment Gateway Integration
- 📦 Order Confirmation and History
- 📑 Invoice Summary
- 👤 User Profile and Account Settings
- 🛠️ Admin Panel:
- ➕ Add/Edit/Delete Products
- 👥 Manage Users
- 📦 Manage Orders
- 📱 Responsive UI (Mobile + Desktop)
- 🔐 JWT Authentication & Route Protection
- React.js
- Redux Toolkit
- React Router DOM
- Axios
- TailwindCSS / MUI / Bootstrap (choose based on your project)
- Node.js
- Express.js
- MongoDB + Mongoose
- Razorpay SDK
- Passport.js + Google OAuth
- JSON Web Token (JWT)
- dotenv
- Clone the Repository
git clone https://github.com/vipulsuthar1144/ecommerce.git
cd ecommerce- Install Dep
# For frontend
cd frontend
npm install
# For backend
npm install- Env Variables
Make Sure to Create a config.env file in backend/config directory and add appropriate variables in order to use the app.
PORT=
DB_URI =
RAZORPAY_KEY_ID=your_razorpay_key
RAZORPAY_SECRET=your_razorpay_secret
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
JWT_SECRET=
JWT_EXPIRE=
COOKIE_EXPIRE=
SMPT_SERVICE =
SMPT_MAIL=
SMPT_PASSWORD=
SMPT_HOST=
SMPT_PORT=
CLOUDINARY_NAME
CLOUDINARY_API_KEY
CLOUDINARY_API_SECRET- Run the App
# Start backend
npm run dev
# Start frontend (in a new terminal)
cd frontend
npm start
Got feedback or ideas? Reach out to me! I’d love to hear from you. 🎉
- 📧 Email: vipulsuthar1144@gmail.com
- 💼 LinkedIn: Vipul Suthar | LinkedIn