E-Mall is a cutting ‑edge, full ‑featured e commerce platform built with the MERN stack. It delivers a seamless, secure shopping experience—featuring user authentication, rich product browsing, dynamic cart management, and a robust checkout flow. Whether you’re a shopper or an admin, E Mall’s intuitive UI and powerful backend have you covered.
-
Secure Authentication
Register, log in, and stay authenticated with JWT ‑powered tokens. -
Product Catalog
Browse, search, and filter products by category, price, or rating. -
Product Detail Pages
High ‑resolution images, customer reviews, and related items suggestions. -
Shopping Cart
Add, update, or remove items; view real ‑time totals and taxes. -
Streamlined Checkout
Address entry, order summary, and payment processing—all in one flow. -
Admin Dashboard
Create, edit, or delete products; manage orders and user accounts.
- MongoDB – Flexible NoSQL database
- Express.js – Fast, minimalist server framework
- React – Reactive, component ‑based UI library
- Node.js – Scalable JavaScript runtime
- JWT – JSON Web Tokens for stateless auth
- Redux – Centralized state management
- Sonner – Sleek toast notifications
- Tailwind CSS – Utility ‑first styling (optional CSS frameworks: Bootstrap / Material ‑UI)
- Multer – Handling
multipart/form-datafor file uploads - Cloudinary API – Cloud storage & image transformation
- Streamifier – Convert buffers to readable streams
Follow these steps to run E-Mall locally:
-
Clone the repo
git clone https://github.com/davesohamm/e-mall.git cd e-mall -
Server Setup
cd backend npm install -
Client Setup
cd frontend npm install -
Configure Environment
Inserver/.env, add:PORT=9000 MONGO_URI=your_mongodb_connection_string JWT_SECRET=your_jwt_secret CLOUDINARY_CLOUD_NAME=your_cloud_name CLOUDINARY_API_KEY=your_api_key CLOUDINARY_API_SECRET=your_api_secret
Feel free to include any other variables as needed.
-
Run in Development
Open two terminals:-
Server:
cd backend npm run dev -
Client:
cd frontend npm run dev
Visit the app at http://localhost:5173.
-
- Sign up or log in.
- Browse or search products.
- View product details and reviews.
- Add items to your cart.
- Checkout with secure payment.
- Log in with an admin account.
- Access Admin Dashboard.
- Add / update / remove products.
- Manage orders and user profiles.
Have questions or feedback? Reach out:
- ✉️ Email: davesohamm@gmail.com
- 💻 GitHub: davesohamm
- 📺 Reference Video: https://www.youtube.com/watch?v=hpgh2BTtac8
- 🌐 Live Demo: https://e-mall-live.vercel.app/
Enjoy exploring and happy coding! 🎉