Project
Project
Management System
The Event Planning & Management System is a web application that allows users to create,
manage, and participate in events. Users can create public or private events, invite
participants, and track RSVP responses. Public events are displayed to all registered users,
who can request to join them. In contrast, private events are not listed publicly and are only
visible to users who receive invitations from the event organizers. The system also includes
a discussion board for event-related communication.
The app supports di(erent user roles (admin, organizer, attendee) with appropriate
permissions. A dashboard provides insights into event engagement, including the number of
invitations sent, the list of recipients, and their RSVP responses. Event organizers can
configure when notifications will be sent to attendees to remind them about the upcoming
event. Reminders can be sent to accepted participants to confirm their attendance and to
invited participants who have not responded (Yes or No). Additionally, when event details are
updated, all accepted attendees must receive notifications to keep them informed.
Note: Each group is free to decide the attributes of the main objects in this project. For
example, you can determine what information is required for user registration (e.g.,
username, password, email address). Furthermore, each group can define the necessary
validation rules for di(erent types of objects.
Front-end Features
• User registration and login
• Di(erent UIs for di(erent roles (admin, organizer, attendee)
• Settings management for admins (e.g., admins can configure the maximum number
of active events a user can create, the maximum number of invitations that can be
sent, etc.)
• Event creation and management interface for event organizers
• RSVP system (users can accept or decline invitations)
• Discussion board (for event-related communication)
• Notification system (for event reminders and updates)
• Mobile-responsive design (for accessibility)
Back-end Features
• RESTful APIs (for user, event, and discussion board management)
• Secure authentication and authorization
• File upload support (for event images)
• Event data storage and processing
• Website and event statistics (for admins)
• Event insights (for event organizers)
• Input validation (for security and data integrity)
Backend
• NodeJS and Express
• Middleware modules from Express Middleware Resources
(https://expressjs.com/en/resources/middleware.html)
• Session stores based on MongoDB or MySQL from Express Session Stores
(https://expressjs.com/id/resources/middleware/session.html)
• Database & ORM:
o mysql, sequelize
o mongodb, mongoose
• Security & Environment Configuration:
o bcrypt (for password hashing)
o dotenv (for managing environment variables)
Note 2: You can use tools or libraries not listed here for evaluation purposes (e.g., testing,
usability testing, etc.)