This is a comprehensive Appointment Management System designed to streamline and simplify appointment scheduling. It features a robust front end built with React, a powerful backend leveraging Express.js and Node.js, and a reliable MySQL database for data management. Additionally, it includes email authentication using Nodemailer to enhance security and communication.
- User Authentication: Secure user login and registration system.
- Appointment Scheduling: Users can book, reschedule, and cancel appointments.
- Admin Dashboard: Admins can manage users and appointments.
- Email Notifications: Automated email notifications for appointment confirmations, reminders, and cancellations.
- Responsive Design: Optimized for both desktop and mobile devices.
- Role-based Access Control: Different levels of access for users and admins.
- Real-time Updates: Live updates on appointment status and availability.
- React: A JavaScript library for building user interfaces.
- React Router: For navigation within the app.
- Redux: State management for managing the application state.
- Axios: For making HTTP requests to the backend.
- Bootstrap: For responsive design and styling.
- Node.js: JavaScript runtime for building the backend server.
- Express.js: Web framework for Node.js for handling HTTP requests and middleware.
- MySQL: Relational database for storing and managing data.
- Sequelize: ORM for MySQL to interact with the database.
- Nodemailer: Module for Node.js applications to send email.
- Clone the repository:
git clone https://github.com/yourusername/appointment-management-system.git cd appointment-management-system
