A minimal MERN stack application for event management and ticket booking.
- User authentication (Customer/Organizer/Admin roles)
- Event creation and management
- Ticket booking with QR codes
- Real-time updates with Socket.IO
- Clean, minimalistic UI
- Node.js (v16+)
- MongoDB
- Clone the repository
git clone <repo-url>
cd Event-Hive- Install dependencies
# Server
cd server
npm install
# Client
cd ../client
npm install- Setup environment
# Copy and edit server/.env
cp server/.env.example server/.env- Start the application
# Terminal 1 - Server
cd server
npm run dev
# Terminal 2 - Client
cd client
npm start- Client: http://localhost:3000
- Server: http://localhost:5000
POST /api/auth/register- Register userPOST /api/auth/login- Login userGET /api/auth/profile- Get user profile
GET /api/events- List all eventsGET /api/events/:id- Get event detailsPOST /api/events- Create event (organizer/admin)PUT /api/events/:id- Update eventDELETE /api/events/:id- Delete event
POST /api/tickets/book- Book ticketGET /api/tickets/my-tickets- Get user ticketsPOST /api/tickets/validate- Validate QR ticket
- Frontend: React, React Router
- Backend: Node.js, Express
- Database: MongoDB
- Real-time: Socket.IO
- Authentication: JWT
Event-Hive/
├── server/
│ ├── models/ # Database models
│ ├── routes/ # API routes
│ ├── middleware/ # Auth middleware
│ └── server.js # Main server file
└── client/
├── src/
│ ├── components/ # React components
│ ├── pages/ # Page components
│ ├── context/ # Auth context
│ └── App.js # Main app component
└── public/