All projects

Event Management System

Team RAPID TURTLES — Sathyabama · 2025

Completed — Team Project

A web-based event management system for the CS department — staff create and approve events, students register and track participation, all with automated email notifications.

Event Management System
HTML/CSS/JSPHPMySQLSpring Boot

Problem

Coordinating department events by hand — staff announcing events informally, students registering through messaging apps, no real approval step or capacity tracking — left no record of who approved what or who was actually registered.

Solution

A role-based platform for the CS department: staff create events, admins approve or reject them, and students register against a capacity limit that closes registration automatically once a event is full — with confirmation emails sent through a dedicated microservice.

Key Features

  • Role-based dashboards for staff and students with secure session handling
  • Multi-layered architecture: PHP backend, MySQL schema, separate Spring Boot email microservice
  • Event creation, brochure uploads, and an approval/tracking workflow

Architecture

  • PHP backend (mysqli, prepared statements throughout) serves Admin/, Staff/, and Student/ dashboards against a MySQL/MariaDB schema
  • A separate Java + Spring Boot microservice (java-email-service) handles registration-confirmation emails, decoupled from the main PHP app
  • Login/Register handles auth with hashed passwords (password_hash/password_verify)

My Contribution

Built as part of Team RAPID TURTLES for the CS department — contributed to the role-based dashboards and the PHP/MySQL backend, including the prepared-statement queries and hashed-password auth used throughout.

Screenshots

Event Management System landing page
Login page
Student dashboard
Staff dashboard
Admin dashboard — event approval workflow

Challenges

  • Keeping a multi-layered stack in sync — a PHP web app and a separate Spring Boot microservice in a different language runtime — required a clear API contract for triggering registration emails across that boundary.

What I Learned

  • Using prepared statements and hashed passwords everywhere by default, even in a student project, to avoid classic PHP pitfalls like SQL injection and plaintext credentials.
View Code