A full-featured Hospital Management System built with the MERN stack (MongoDB, Express.js, React.js, Node.js). This system allows hospitals to efficiently manage doctors, patients, and appointments through a secure web interface, with dedicated dashboards for admins and patients.
- Registration & Login: Patients can easily create an account and log in securely.
- View Doctors: Browse all registered doctors along with their department, contact info, and profiles.
- Book Appointments: Schedule appointments with doctors, providing all necessary patient information.
- Appointment Status: Track appointment status (Pending, Accepted, Rejected).
- Visit Tracking: See which appointments have been visited or not.
- Admin Authentication: Secure admin login for dashboard access.
- Doctor Management: Add new doctors with profile image, department, and credentials.
- Appointments Dashboard: View all appointments, update their status, and mark visits.
- Patient Management: Access details of registered patients.
- Logout: Secure logout functionality for both patients and admins.
- Doctor Panel: (To be implemented) Dedicated view for doctors to manage their appointments and patient details.
backend/ # Express.js API for users, appointments, authentication, DB connection
dashboard/ # React.js admin dashboard for hospital management
frontend/ # React.js patient-side interface for booking appointments
- Frontend: React.js
- Backend: Node.js, Express.js
- Database: MongoDB
- Authentication: JWT (JSON Web Token), Cookies
- Cloud Storage: Cloudinary (for doctor profile images)
- Styling: CSS/React styles
- APIs: RESTful API endpoints
- Register/Login (patients and admins)
- Add new admins (admin only)
- User details and authentication middleware
- Register new doctors (admin only)
- Store doctor profiles with department, avatar, contact info
- Book appointments (patients)
- List all appointments (admin)
- Update appointment status (admin)
- Mark appointments as visited/not visited
| Dashboard | Features |
|---|---|
| Admin | Doctors, Appointments, Add Doctor/Admin, Status controls |
| Patient | Doctor list, Book appointments, Track appointment status |
git clone https://github.com/RushiBg/Hosptial-Management-System.git
cd Hosptial-Management-Systemcd backend
npm install
# Configure your .env with MONGO_URI and JWT_SECRET
npm startcd ../dashboard
npm install
npm startcd ../frontend
npm install
npm startBackend requires:
MONGO_URI(your MongoDB connection string)JWT_SECRET(your JWT secret key)- Cloudinary config for doctor avatars
Feel free to fork and contribute! Pull requests and suggestions are welcome.