Plan. Discover. Experience. An enterprise-grade, full-stack event discovery, SaaS management, and cryptographic QR ticketing platform built with modern web standards, Node.js, Express, MongoDB, and Chart.js.
mongodb-memory-server if local MongoDB is not running).qrcode base64 cryptographic generator.The database comes pre-seeded with 3 fully configured demo accounts:
| Role | Password | Access Level | |
|---|---|---|---|
| Admin | admin@example.com |
Admin123! |
Global Admin Command Center & Moderation |
| Organizer | organizer@example.com |
Organizer123! |
Host Dashboard, Create Events, Analytics, Attendees |
| Attendee | attendee@example.com |
Attendee123! |
Browse, Book Passes, Ticket Wallet, Reviews |
# Clone repository
git clone https://github.com/your-username/eventsphere.git
cd eventsphere
# Install dependencies
npm install
A default .env file is already provided. You can inspect .env.example to customize settings:
PORT=5000
NODE_ENV=development
MONGODB_URI=mongodb://localhost:27017/eventsphere
JWT_SECRET=eventsphere_super_secret_jwt_key_2026
Populate 12+ realistic events, venues, bookings, tickets with QR codes, and notifications:
npm run seed
npm start
Open your browser and navigate to:
http://localhost:5000
event-management-system/
├── backend/
│ ├── app.js
│ ├── server.js
│ ├── config/ (constants, database, environment)
│ ├── controllers/ (auth, event, ticket, user, venue, payment, attendee, notification, analytics)
│ ├── middleware/ (auth, role, error, validation, upload)
│ ├── models/ (User, Event, Venue, Ticket, Registration, Payment, Notification, Review)
│ ├── routes/ (auth, event, ticket, user, venue, payment, attendee, notification, analytics)
│ ├── services/ (ticket, email, notification)
│ ├── utils/ (generateQRCode, generateTicket, generateToken, logger)
│ └── validators/
├── database/
│ └── seed.js
├── docs/
│ ├── API.md
│ ├── ARCHITECTURE.md
│ └── DATABASE.md
├── frontend/
│ ├── index.html
│ ├── events.html
│ ├── event-details.html
│ ├── about.html
│ ├── contact.html
│ ├── admin/ (admin-dashboard, users, events, venues, payments, reports, settings)
│ ├── auth/ (login, register, forgot-password, reset-password)
│ ├── dashboard/ (dashboard, my-events, create-event, edit-event, attendees, tickets, analytics, notifications, settings)
│ ├── css/ (variables, reset, global, navbar, footer, hero, events, event-details, dashboard, forms, tables, modal, notifications, responsive, themes, animations)
│ └── js/ (main, api, auth, events, event-details, dashboard, admin, tickets, analytics, notifications, theme, components, utils)
├── .env.example
├── .gitignore
├── LICENSE
├── package.json
└── README.md
This project is licensed under the MIT License — see the LICENSE file for details.