A full-stack E-commerce Admin Dashboard built with React (Vite), Node.js/Express (TypeScript), and MySQL.
This project demonstrates SQL data analysis by providing KPIs, charts, and insights for admins.
- 📈 Total Revenue (sum of all orders)
- 🛍️ Total Orders (count of all orders)
- 💰 Average Order Value (AOV)
- 📦 Total Products Sold
- 📊 Revenue Over Time (daily, weekly, monthly)
- 📉 Orders Over Time
- 👑 Top Customers by Revenue
- 🆕 New vs Returning Customers (Segmentation)
- 🌍 Customer Locations (orders & revenue by city)
- 🔁 Average Orders per Customer
- ⭐ Top 5 Best-Selling Products
- 📂 Category-Wise Revenue Contribution
⚠️ Low Stock Alerts (< 10 items)- ❌ Products Never Purchased
Frontend ⚡
- React (Vite)
- TailwindCSS
- Axios
- Recharts (charts & graphs)
Backend ⚙️
- Node.js
- Express.js (TypeScript)
- MySQL2 (Promise API)
Database 🗄️
- MySQL (hosted on freesqldatabase.com)
ecommerce-dashboard/
│
├── backend/
│ ├── src/
│ │ ├── routes/ # API routes
│ │ ├── db/ # database connection
│ │ └── server.ts # server entry
│ ├── package.json
│ └── tsconfig.json
│
├── frontend/
│ ├── src/
│ │ ├── components/ # UI components
│ │ ├── App.tsx
│ │ └── api.ts # API config
│ ├── package.json
│ └── vite.config.ts
│
└── README.md