MMU Counseling Appointment System (CAS)
A comprehensive web-based counseling appointment system for Multimedia University (MMU) that facilitates student-counselor interactions through appointment scheduling, forum discussions, and real-time notifications.
π Features
Core Functionality
- User Authentication & Authorization
- Role-based access (Student, Counselor, Admin)
- Email verification system
- Password reset functionality
- Session management
- Appointment Management
- Real-time availability scheduling
- Automated counselor assignment
- Appointment approval/decline workflow
- Rescheduling capabilities
- Email notifications for all appointment actions
- Forum System
- Public/private post creation
- Counselor-student interactions
- Real-time replies and notifications
- Post management (close, delete, toggle visibility)
- Notification System
- In-app notifications
- Browser push notifications
- Email integration via EmailJS
- Real-time updates
User Roles
Students
- Book appointments with available counselors
- Create forum posts (public/private)
- View appointment history
- Receive notifications
Counselors
- Manage weekly availability schedules
- Handle appointment requests
- Respond to forum posts
- Emergency schedule adjustments
- View student appointments
π οΈ Technology Stack
- Frontend: HTML5, CSS3, JavaScript (ES6+)
- Backend: Firebase (Firestore, Authentication)
- Email Service: EmailJS
- Hosting: Firebase Hosting
- Icons: SVG-based icons from various sources
π Project Structure
mmu-cas/
βββ authentication/
β βββ login-page.html
β βββ registration-page.html
β βββ forgot-password.html
β βββ email-verification.html
βββ student/
β βββ student-dashboard.html
β βββ student-meetings.html
β βββ student-forum.html
βββ counselor/
β βββ counselor-dashboard.html
β βββ counselor-meetings.html
β βββ counselor-forum.html
βββ shared/
β βββ forum4.html
β βββ notification.html
β βββ styles/
βββ firebase/
β βββ configuration.js
βββ assets/
βββ images/
π§ Firebase Configuration
The system uses Firebase with the following services:
- Authentication: User management and session handling
- Firestore: Real-time database for appointments, forum posts, notifications
- Storage: File storage (if needed for future features)
Key Collections
users - User profiles and roles
appointments - Booking and scheduling data
forumPosts - Discussion threads and replies
notifications - User notifications
counselorAvailability - Counselor schedule management
π¨ UI/UX Features
- Responsive design for all device sizes
- Modern, accessible interface
- Real-time updates without page refresh
- Intuitive navigation and user flows
- Consistent branding with MMU colors
π§ Email Integration
The system integrates with EmailJS for:
- Appointment confirmations and updates
- Password reset links
- Email verification
- Forum notifications
- Counselor assignment notifications
π Security Features
- Role-based access control
- Email verification requirement
- Secure session management
- Input validation and sanitization
- Firebase Security Rules implementation
π Getting Started
Prerequisites
- Firebase project with Authentication and Firestore enabled
- EmailJS account for email services
- Modern web browser with JavaScript enabled
Installation
- Clone the repository
- Configure Firebase credentials in
firebase-config.js
- Set up EmailJS templates and credentials
- Deploy to Firebase Hosting or preferred web server
Firebase Setup
- Enable Email/Password authentication
- Configure Firestore security rules
- Set up appropriate collections and indexes
- Configure authorized domains for OAuth
π± Browser Support
- Chrome 80+
- Firefox 75+
- Safari 13+
- Edge 80+
π€ Contributing
Please read the contributing guidelines before submitting pull requests or issues.
π License
This project is licensed under the MIT License - see the LICENSE file for details.
π Support
For technical support or questions about the system, please contact the MMU IT department or refer to the system documentation.
Note: This system is designed specifically for Multimedia Universityβs counseling department and follows their operational workflows and privacy requirements.