ShopSphere is a full-stack e-commerce platform built using the MERN stack with integrated business analytics.
It provides complete online shopping functionality along with data-driven insights using real-world Kaggle datasets.
This project combines:
- Full Stack Development
- Database Management
- Authentication Systems
- Admin Management
- Business Analytics
- Data Visualization
- CSV Export Automation
making it a complete real-world industry-level project.
ShopSphere is designed to simulate a production-grade e-commerce system where users can:
- Register and login securely
- Browse products
- Search products
- Add items to cart
- Save products in wishlist
- Apply discount coupons
- Select payment methods
- Place orders
- Track order status
- Write reviews
At the same time, admin users can:
- Add products
- Delete products
- Manage customer orders
- Export reports
The unique feature of this project is the Analytics Module, where e-commerce business data is analyzed using Kaggle datasets and transformed into actionable business insights.
This project was built to demonstrate:
✅ End-to-end customer shopping lifecycle
✅ Full-stack MERN architecture
✅ Secure JWT authentication
✅ Admin product and order management
✅ Coupon engine implementation
✅ Dynamic review and rating system
✅ Business analytics using real-world data
✅ SQL + Excel + Python + Power BI integration
Users can:
- Register account
- Login securely
- Logout
- Access profile page
- Reset forgotten password
Security implemented:
- JWT Authentication
- Password hashing using bcrypt
- Protected routes
- Role-based authorization
Each product contains:
- Product name
- Description
- Price
- Discount price
- Category
- Brand
- Stock
- Images
- Badge
- Rating
- Reviews
Features:
- Product listing
- Product detail page
- Search products
- Category filtering
- Product stock tracking
Users can:
- Add products to wishlist
- View saved wishlist products
- Remove products from wishlist
This helps users save products for later.
Cart supports:
- Add product
- Increase quantity
- Decrease quantity
- Remove item
- Auto total calculation
The cart dynamically updates the total based on quantity.
Checkout includes:
Users fill:
- Full Name
- Phone Number
- Street
- City
- State
- Pincode
- Country
Available coupon:
WELCOME10
Coupon features:
- Validate coupon
- Calculate discount
- Update final amount
Users can select:
- Cash on Delivery
- UPI
- Card
- Net Banking
After placing order:
Users can:
- View order history
- Track order status
- Check payment status
Order lifecycle:
Pending → Processing → Shipped → Delivered
Admin can update order status.
Users can:
- Give product rating (1–5)
- Write review comments
The system automatically updates:
- Average rating
- Total review count
Admin dashboard provides:
- Product management
- Order management
- CSV export
Admin features:
- Add products
- Delete products
- View stock
- View customer orders
- Update order status
- Track payments
Export sales report as CSV.
This is the unique and most important part of this project.
The analytics module uses a real-world Kaggle dataset.
Dataset used:
Brazilian E-Commerce Public Dataset by Olist
This dataset includes:
- Orders
- Payments
- Reviews
- Products
- Customers
- Sellers
Dataset files:
olist_customers_dataset.csv
olist_orders_dataset.csv
olist_order_items_dataset.csv
olist_order_payments_dataset.csv
olist_order_reviews_dataset.csv
olist_products_dataset.csv
olist_sellers_dataset.csv
product_category_name_translation.csv
These datasets are stored in:
analytics/data/
Using Python:
Tracks customer order growth over time.
Generated:
monthly_orders.csv
monthly_orders_trend.png
Shows payment distribution.
Generated:
payment_summary.csv
payment_summary.png
Identifies top performing products.
Generated:
top_products.csv
Shows where customers are located.
Generated:
customers_by_state.csv
Analyzes customer review patterns.
Generated:
review_summary.csv
Analytics tools used:
- Python
- Pandas
- Matplotlib
- SQL
- Excel
- Power BI
- Tableau
The user lands on:
http://localhost:5173
Home page contains:
- Hero section
- Search bar
- Categories
- Featured products
- Offer banner
Click:
Sign Up
Enter:
- Name
- Password
Account is created.
Click:
Login
Enter credentials.
The user gets authenticated.
Users can:
- Search products
- Open product details
- View price
- Check stock
- Read description
- View ratings
From product page:
Add to Cart
The product is stored in the cart.
Click:
Add to Wishlist
The product is saved for later.
Inside cart:
Users can:
- Increase quantity
- Decrease quantity
- Remove item
The total updates automatically.
Click:
Proceed to Checkout
Fill shipping details.
Use:
WELCOME10
Discount gets applied.
Choose:
- COD
- UPI
- Card
- Net Banking
Click:
Place Order
Order gets created.
Go to:
My Orders
Track:
Pending → Processing → Shipped → Delivered
Users can:
- Give rating
- Write review
Login as admin.
Access:
/admin
Admin can:
Go to:
/admin/products
Admin can:
- Add products
- Delete products
- Manage stock
Go to:
/admin/orders
Admin can:
- View all customer orders
- Update status
- Monitor payments
Admin can export:
/api/admin/export/sales-report
This exports CSV data.
ShopSphere/
│
├── backend/
│ ├── controllers/
│ ├── models/
│ ├── routes/
│ ├── middleware/
│ ├── utils/
│ └── server.js
│
├── frontend/
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── services/
│ │ └── App.jsx
│
├── analytics/
│ ├── data/
│ ├── python/
│ ├── sql/
│ ├── excel-reports/
│ ├── powerbi-dashboard/
│ └── tableau-dashboard/
│
├── screenshots/
└── README.md
git clone https://github.com/build-with-saurav/ShopSphere.git
cd ShopSphereGo inside backend:
cd backendInstall dependencies:
npm installCreate .env
PORT=5000
MONGO_URI=mongodb://127.0.0.1:27017/shopsphere
JWT_SECRET=your_secret_keyRun backend:
npm run devRuns on:
http://localhost:5000
Go inside frontend:
cd frontendInstall dependencies:
npm installRun frontend:
npm run devRuns on:
http://localhost:5173
Go inside:
cd analytics/pythonInstall dependencies:
pip install pandas matplotlibRun analytics:
python3 ecommerce_analysis.pyReports generated inside:
analytics/excel-reports/
POST /api/auth/register
POST /api/auth/login
POST /api/auth/forgot-password
PUT /api/auth/reset-password/:token
GET /api/auth/profile
GET /api/products
GET /api/products/:id
POST /api/products
PUT /api/products/:id
DELETE /api/products/:id
POST /api/products/:id/review
POST /api/cart
GET /api/cart
PUT /api/cart
DELETE /api/cart/:productId
POST /api/wishlist
GET /api/wishlist
DELETE /api/wishlist/:productId
POST /api/orders
GET /api/orders
PUT /api/orders/:id/status
POST /api/coupons/validate
ShopSphere is a full-stack e-commerce platform integrated with business analytics.
It supports customer shopping workflows, admin product/order management, coupon systems, payment workflows, and analytics using Kaggle datasets.
The project combines software engineering and business intelligence, making it useful for Full Stack, Data Analyst, and Business Analyst roles.
Saurav Kumar Singh
B.Tech Computer Science and Engineering
National Institute of Technology Calicut













