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.
- ποΈ Frontend (Customer App): [https://e-commerce-frontend-nine-tan.vercel.app/]
- π§ Admin Panel: [https://e-commerce-admin-tau-beryl.vercel.app/]
| 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 |
β 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.
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
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/auth/register |
Register new user |
| POST | /api/auth/login |
Login and return JWT token |
| 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 |
| 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 |
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/upload |
Upload product image |
| DELETE | /api/upload/:id |
Delete image from Cloudinary |
# 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| 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 |
| Service | Platform |
|---|---|
| Frontend & Admin | Vercel |
| Backend | Render |
| Database | MongoDB Atlas |
| Media Storage | Cloudinary |
| Payments | Stripe |
- 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)
πΌοΈ *Add here later: