Skip to content

Bhupesh-aher/E-commerce

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

32 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ‘— WearWell – Full-Stack Fashion E-Commerce Platform

WearWell is a full-stack, scalable MERN-based e-commerce platform for clothing brands. It includes a modern React + Tailwind frontend, a secure Node.js + Express backend, and a powerful Admin Dashboard β€” all integrated in one repo for seamless deployment and development.

Customers can browse fashion collections, add items to their cart, and checkout securely via Stripe, while admins can manage products, orders, and users effortlessly.


🌐 Live Links


🧱 Tech Stack

Layer Technology
Frontend React.js, Redux Toolkit, Tailwind CSS
Backend Node.js, Express.js
Database MongoDB (Mongoose ODM)
Payments Stripe API
Media Storage Cloudinary
Authentication JWT + bcrypt
State Management Redux Toolkit
Deployment Vercel (Frontend & Admin), Render (Backend), MongoDB Atlas
Security & Config Helmet, dotenv, CORS
Validation Express Validator

βš™οΈ Core Features

βœ… User Authentication β€” Secure signup/login using JWT

βœ… Product Catalog β€” Browse latest, top-rated, and best-selling clothing items

βœ… Shopping Cart β€” Add, remove, and modify cart items in real-time

βœ… Stripe Payment Integration β€” End-to-end secure payments with success tracking

βœ… Order History β€” Users can view their past orders with status updates

βœ… Cloudinary Integration β€” Optimized media upload for products

βœ… Admin Dashboard β€” Manage products, orders, and users

βœ… Responsive UI β€” Fully optimized for desktop, tablet, and mobile

βœ… Global State Management β€” Centralized control via Redux Toolkit

βœ… Scalable Modular Codebase β€” Easy to extend for coupons, wishlists, etc.


🧭 Project Structure

wearwell/
 ┣ backend/           β†’ Node.js + Express REST API
 ┃ ┣ controllers/     β†’ Logic for products, orders, users
 ┃ ┣ models/          β†’ Mongoose schemas
 ┃ ┣ routes/          β†’ API route handlers
 ┃ ┣ middleware/      β†’ Auth + error handling
 ┃ ┣ utils/           β†’ Cloudinary, Stripe helpers
 ┃ ┣ config/          β†’ DB connection, environment setup
 ┃ β”— server.js        β†’ Entry point

 ┣ frontend/          β†’ Customer-facing React app
 ┃ ┣ src/
 ┃ ┃ ┣ components/    β†’ UI components
 ┃ ┃ ┣ pages/         β†’ Home, Product, Cart, Checkout
 ┃ ┃ ┣ redux/         β†’ Slices for user, product, cart
 ┃ ┃ ┣ api/           β†’ Axios instance setup
 ┃ ┃ β”— App.jsx        β†’ App entry

 ┣ admin/             β†’ Admin Dashboard (React + Tailwind)
 ┃ ┣ src/
 ┃ ┃ ┣ pages/         β†’ Orders, Users, Products
 ┃ ┃ ┣ components/    β†’ Admin UI components
 ┃ ┃ β”— redux/         β†’ Admin state management
 β”— README.md

πŸ› οΈ API Overview (Backend)

πŸ‘€ Auth

Method Endpoint Description
POST /api/auth/register Register new user
POST /api/auth/login Login and return JWT token

πŸ‘— Products

Method Endpoint Description
GET /api/products Fetch all products (supports pagination + filters)
POST /api/products Add product (Admin only)
PUT /api/products/:id Update product
DELETE /api/products/:id Delete product

πŸ›’ Cart / Orders

Method Endpoint Description
POST /api/orders Create new order (Stripe checkout)
GET /api/orders/:userId Get user orders
GET /api/orders/:id Get order details by ID

☁️ Cloudinary

Method Endpoint Description
POST /api/upload Upload product image
DELETE /api/upload/:id Delete image from Cloudinary

βš™οΈ Setup & Installation

# 1️⃣ Clone the repository
git clone https://github.com/<your-username>/wearwell.git
cd wearwell

# 2️⃣ Install dependencies for backend, frontend, and admin
cd backend && npm install
cd ../frontend && npm install
cd ../admin && npm install

# 3️⃣ Add environment variables
cp backend/.env.example backend/.env
cp frontend/.env.example frontend/.env
cp admin/.env.example admin/.env

# 4️⃣ Run development servers
# (Run each in separate terminals)
cd backend && npm run dev
cd frontend && npm run dev
cd admin && npm run dev

πŸ” Environment Variables

Variable Description
MONGO_URI MongoDB connection string
JWT_SECRET JWT secret key
CLOUDINARY_CLOUD_NAME Cloudinary cloud name
CLOUDINARY_API_KEY Cloudinary API key
CLOUDINARY_API_SECRET Cloudinary secret
STRIPE_SECRET_KEY Stripe private API key
CLIENT_URL Frontend domain for CORS

☁️ Deployment

Service Platform
Frontend & Admin Vercel
Backend Render
Database MongoDB Atlas
Media Storage Cloudinary
Payments Stripe

🧠 Scalability & Architecture Notes

  • Modular, MVC-based code structure for maintainability
  • Decoupled frontend-backend with clean REST interfaces
  • Integrated Stripe + Cloudinary SDKs for production reliability
  • Reusable UI components and slices with Redux Toolkit
  • Centralized error handling and CORS control
  • Easy environment switching (local ↔ production)

πŸ“Έ Screenshots

πŸ–ΌοΈ *Add here later:

About

πŸ‘— WearWell is a full-stack MERN-based fashion e-commerce platform featuring a customer app, backend API, and admin dashboard, all unified within a single repository. Built with React, Tailwind CSS, Redux Toolkit, Node.js, Express, MongoDB, and Cloudinary, it delivers a modern, responsive, and scalable shopping experienc

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages