A cutting-edge, feature-rich e-commerce solution built with the MERN stack
- JWT-based authentication with Access/Refresh tokens
- Role-based authorization (Admin/User)
- Secure password hashing
- Protected API routes
- 📦 Advanced product categorization
- 🏷️ Dynamic pricing system
- 🔍 Smart search functionality
- 📸 Multi-image product support
- 🏷️ Product variants (size, color, etc.)
- Real-time cart updates
- Wishlist functionality
- Product reviews & ratings
- Order tracking system
- Recently viewed items
- 💰 Stripe payment integration
- 🔒 Secure checkout process
- 📜 Order confirmation emails
- 🎫 Coupon system
- 💱 Multiple currency support
- 📈 Sales analytics
- 📦 Inventory management
- 👥 Customer management
- 📊 Revenue reports
- 🎯 Marketing tools
- 📱 Fully responsive design
- 🌓 Dark/Light mode
- ⚡ Fast loading times
- 🌈 Customizable themes
- 🎭 Animated transitions
- ⚛️ React.js
- 🎨 Tailwind CSS
- 📱 React Router
- 🔄 Redux Toolkit
- 📊 Recharts
- 🚀 Node.js
- ⚡ Express.js
- 🍃 MongoDB
- 🔄 Redis
- 💳 Stripe
- Node.js >= 14
- MongoDB
- Redis
- Stripe Account
- Clone the repository
git clone https://github.com/abhiya492/E-Commerce.git
- Backend Setup
cd backend
npm install
cp .env.example .env
npm run dev
- Frontend Setup
cd frontend
npm install
cp .env.example .env
npm run dev
MONGODB_URI=your_mongodb_uri
REDIS_URL=your_redis_url
STRIPE_SECRET_KEY=your_stripe_secret
JWT_SECRET=your_jwt_secret
VITE_API_URL=backend_url
VITE_STRIPE_PUBLIC_KEY=stripe_public_key
- 🔑
POST /api/auth/register
- User registration - 🔑
POST /api/auth/login
- User login - 🔑
POST /api/auth/refresh
- Refresh token
- 📦
GET /api/products
- Get all products - 📦
POST /api/products
- Create product (Admin) - 📦
PUT /api/products/:id
- Update product (Admin) - 📦
DELETE /api/products/:id
- Delete product (Admin)
- 🛍️
POST /api/orders
- Create order - 🛍️
GET /api/orders
- Get user orders - 🛍️
GET /api/orders/:id
- Get order details
# Backend tests
cd backend && npm test
# Frontend tests
cd frontend && npm test
- ESLint configuration
- Prettier formatting
- Husky pre-commit hooks
- TypeScript for type safety
- ⚡ Redis caching for frequent queries
- 🖼️ Image optimization
- 🚀 Code splitting
- 📦 Bundle optimization
- 🔄 API response caching
- 🛡️ CORS configuration
- 🔐 XSS protection
- 🚫 Rate limiting
- 🔒 CSRF protection
- 📝 Security headers
- 📲 Fluid layouts
- 🖥️ Breakpoint optimization
- 📱 Touch-friendly interfaces
- 🌅 Optimized images
- ⚡ Fast mobile performance
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit changes (
git commit -m 'Add AmazingFeature'
) - Push to branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE.md file for details.
- 🙏 Thanks to all contributors
- 📚 Built with open-source libraries
- 🌟 Inspired by modern e-commerce needs
Built with 💝 for the modern web