A modern full-stack open-source platform to manage 🎪 fests, 📅 events, 📝 recruitments & more — built for universities, clubs, and organizations.
Frontend: EJS + TailwindCSS
Backend: Node.js + Express
Database: MongoDB + Mongoose
Auth: Session-based + Google OAuth
Cloud Services: Cloudinary (Image Hosting) + Nodemailer (Email)
- 🔐 User Authentication: Secure login, signup, password reset, email verification
- 🗓️ Event Management: Create, update, delete, and view detailed event info
- ⚙️ Admin Dashboard: Role-based management of users, clubs, logs, and events
- 📬 Email Notifications: Verification and event-based email alerts
- ☁️ Cloudinary Integration: Event banner and profile image uploads
- 🎭 Role-Based Access: Admins, Club Admins, and Users
- 🔎 Advanced Filters: Filter by club, type, and category
- 🔁 Flash Messages: Real-time user feedback on actions
- 📱 Responsive UI: Fully responsive layout for all screen sizes
- 🔎 Search Bar: Instant search over all event listings
- 📣 Announcements: Admin-posted announcements page for users
- 🎛️ Club Management: Individual club panels for managing events
Make sure you have these installed:
- Node.js (v14+)
- MongoDB (local or Atlas)
- Git
- Cloudinary account
- Google Developer Console credentials for OAuth
- App email credentials for verification
git clone https://github.com/your-username/event-management-portal.git
cd event-management-portal
npm install
Create a .env file in the root and add:
MONGO_URI=your_mongo_uri
EMAIL_USER=your_email
EMAIL_PASS=your_email_password_or_app_key
JWT_SECRET=your_jwt_secret
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
SESSION_SECRET=your_session_secret
CLOUDINARY_API_KEY=your_cloudinary_key
CLOUDINARY_API_SECRET=your_cloudinary_secret
CLOUDINARY_CLOUD_NAME=your_cloudinary_name
npm start
Then open http://localhost:3000 in your browser.
We love contributions from the community! 💖
-
Fork the project
-
Create a feature branch:
git checkout -b feature-name
- Commit your changes:
git commit -m "Added feature XYZ"
- Push your branch:
git push origin feature-name
- Open a Pull Request
This project is licensed under the MIT License.
Built with ❤️ by @TheFakeCreator and @shijha19
For queries, reach out via GitHub Issues