A premium B2B2C Event Management Marketplace built with the MERN stack. This platform connects event organizers with verified vendors across multiple service categories.
- Glassmorphism Design - Modern frosted glass aesthetic
- Premium Dark Theme - Consistent dark mode across all pages
- Smooth Animations - Fade-ins, slides, and micro-interactions
- Mobile Responsive - Works on all screen sizes
- 6 Payment Methods - UPI, Cards, Net Banking, Wallets, EMI, Cash on Delivery
- Payment Simulation - Realistic payment processing experience
- Password Strength Meter - Real-time validation on signup
- Rate Limiting - Protection against brute force attacks
- Indian-themed Data - Realistic vendor and product data
- Better error handling throughout
- Improved authentication security
- Clickable logo navigation on all pages
- Proper 404 page instead of silent redirects
- Browse vendors by category (Catering, Florist, Decoration, Lighting)
- Add products to cart from multiple vendors
- Secure checkout with 6 payment options
- Real-time order tracking
- Guest list management
- Product management dashboard
- Order/transaction history
- Product status tracking
- Membership status display
- User & vendor management
- Order status updates
- Vendor membership control
- Platform analytics
| Layer | Technology |
|---|---|
| Frontend | React 18 + Vite |
| Backend | Node.js + Express |
| Database | MongoDB Atlas |
| Auth | JWT (JSON Web Tokens) |
| Images | Cloudinary |
| Styling | CSS (Premium Dark Theme) |
- Node.js 18+
- MongoDB Atlas account
- Cloudinary account
# Clone the repository
git clone https://github.com/yourusername/event-management-system.git
cd event-management-system
# Install server dependencies
cd server
npm install
# Install client dependencies
cd ../client
npm installCreate server/.env:
PORT=5002
MONGODB_URI=mongodb+srv://your-connection-string
JWT_SECRET=your-secret-key
CLOUDINARY_CLOUD_NAME=your-cloud-name
CLOUDINARY_API_KEY=your-api-key
CLOUDINARY_API_SECRET=your-api-secretcd server
npm run seed# Terminal 1 - Backend
cd server
npm run dev
# Terminal 2 - Frontend
cd client
npm run dev- Frontend: http://localhost:5173
- Backend: http://localhost:5002
| Role | Password | |
|---|---|---|
| Admin | admin@event.com | password123 |
| Vendor | vendor@event.com | password123 |
| User | user@event.com | password123 |
Event Management System/
├── client/ # React Frontend
│ ├── src/
│ │ ├── components/ # Reusable components
│ │ ├── context/ # Auth & Cart context
│ │ ├── pages/ # All page components
│ │ ├── services/ # API service layer
│ │ └── index.css # Global styles
│ └── package.json
│
├── server/ # Node.js Backend
│ ├── config/ # DB & Cloudinary config
│ ├── middleware/ # Auth middleware
│ ├── models/ # MongoDB schemas
│ ├── routes/ # API routes
│ ├── seedData.js # Database seeder
│ └── server.js # Entry point
│
└── README.md
| Method | Description |
|---|---|
| 💵 Cash on Delivery | Pay when you receive |
| 📱 UPI | Google Pay, PhonePe, Paytm |
| 💳 Credit/Debit Card | Visa, Mastercard, RuPay |
| 🏦 Net Banking | All major Indian banks |
| 👛 Wallets | Amazon Pay, Paytm, etc. |
| 📊 EMI | 3/6/9/12 month options |
Note: Payment simulation is enabled for demo purposes.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License.
Sharansh Jha
⭐ Star this repo if you found it helpful!