A modern healthcare appointment management system built using Next.js, TypeScript, Appwrite, and Tailwind CSS. The platform streamlines patient registration, appointment scheduling, administrative workflows, SMS notifications, and secure healthcare data management.
🌐 Live Website
https://patient-management-system-qoi5.vercel.app/
📂 GitHub Repository
https://github.com/IdushaGaravi/Patient-Management-System
- Patient Registration System
- Patient Login System
- Appointment Scheduling System
- Appointment Approval Workflow
- Appointment Cancellation Workflow
- Administrative Dashboard
- Admin Passkey Verification
- SMS Notifications for Appointment Updates
- Secure File Upload System
- Cloud Backend Services using Appwrite
- Form Validation using Zod
- Error Monitoring using Sentry
- Responsive User Interface
- Modern Next.js Architecture
- Type-Safe Development with TypeScript
- Healthcare-Oriented UI Design
The Patient Management System is a modern healthcare appointment management platform designed to simplify and enhance patient interactions with healthcare providers.
The system enables patients to:
- Register securely.
- Login to manage appointments.
- Submit medical information.
- Upload required healthcare documents.
- Schedule appointments.
- Receive SMS notifications when appointments are approved or cancelled.
Healthcare administrators can:
- Access a secure administrative dashboard.
- Verify their identity using an admin passkey.
- Approve or cancel appointment requests.
- Efficiently manage appointment workflows.
This project demonstrates practical experience in:
- Full-Stack Web Development.
- Healthcare Management Systems.
- Cloud Backend Services.
- Secure Authentication and Authorization.
- SMS Notification Services.
- Responsive Application Development.
- Modern UI Component Design.
- Type-Safe Development using TypeScript.
| Technology | Version | Purpose |
|---|---|---|
| Next.js | 15.x | Full-Stack Framework |
| React | 19.x | Frontend Library |
| TypeScript | 5.x | Type Safety |
| Appwrite | Latest | Backend Services |
| Tailwind CSS | 4.x | Styling |
| React Hook Form | Latest | Form Management |
| Zod | Latest | Form Validation |
| React Datepicker | Latest | Appointment Scheduling |
| React Dropzone | Latest | File Uploads |
| TanStack React Table | Latest | Administrative Dashboard |
| Sentry | Latest | Error Monitoring |
| Lucide React | Latest | Icons |
| Twilio | Latest | SMS Notification Services |
- Next.js
- React
- TypeScript
- Tailwind CSS
- Lucide React
- Appwrite
- React Hook Form
- Zod
- Twilio SMS API
- React Datepicker
- React Dropzone
- TanStack React Table
- Sentry
All screenshots are stored inside the
screenshotsfolder.
Registered patients can securely log in to access healthcare services and appointment information.
Patients can securely register by providing their personal and medical information.
Patients can conveniently schedule appointments with healthcare providers.
Patients are notified when their appointments are successfully confirmed.
Patients receive SMS notifications whenever their appointments are approved or cancelled.
Administrators are required to enter a secure passkey before accessing the administrative dashboard.
Healthcare administrators can efficiently manage patient appointments and requests, view scheduled, pending, and cancelled appointment counts at a glance.
Admins can schedule a patient's appointment by selecting a doctor, date/time, reason, and notes.
Admins can cancel a pending or scheduled appointment by providing a reason for cancellation.
The application is fully responsive across desktop and mobile devices.
- Patient Registration
- Patient Login
- Medical Information Collection
- Secure Document Uploads
- Schedule Appointments
- Appointment Approval Workflow
- Appointment Cancellation Workflow
- Appointment Status Tracking
- Passkey Protected Admin Access
- Appointment Management Dashboard
- Manage Appointment Requests
- Patient Information Management
- Appointment Confirmation Notifications
- Appointment Cancellation Notifications
- Real-Time Appointment Updates
- Passkey Protected Admin Access
- Secure Cloud Storage using Appwrite
- Input Validation using Zod
- Environment Variable Protection
- Type-Safe Development
- Responsive Design
- Modern Healthcare UI
- Accessible Components
Patient-Management-System/
│
├── app/
├── components/
├── constants/
├── lib/
├── public/
├── screenshots/
│
├── package.json
├── next.config.ts
├── tailwind.config.ts
├── tsconfig.json
├── README.md
└── .env.local
Patient Registration
│
▼
Patient Login
│
▼
Upload Medical Information
│
▼
Schedule Appointment
│
▼
Appointment Request
│
▼
Admin Access Verification
│
▼
Appointment Approval / Cancellation
│
▼
SMS Notification Sent
│
▼
Appointment Confirmation
git clone https://github.com/IdushaGaravi/Patient-Management-System.git
cd Patient-Management-Systemnpm installCreate a .env.local file in the root directory and configure the following variables:
NEXT_PUBLIC_ENDPOINT=
PROJECT_ID=
API_KEY=
DATABASE_ID=
PATIENT_COLLECTION_ID=
DOCTOR_COLLECTION_ID=
APPOINTMENT_COLLECTION_ID=
NEXT_PUBLIC_BUCKET_ID=
NEXT_PUBLIC_ADMIN_PASSKEY=
TWILIO_ACCOUNT_SID=
TWILIO_AUTH_TOKEN=
TWILIO_PHONE_NUMBER=Configure these variables using your Appwrite and Twilio project settings.
Start the development server:
npm run devThe application will run locally at:
http://localhost:3000
Generate the production build:
npm run buildRun the production server:
npm start- Full-Stack Development with Next.js
- Healthcare Appointment Management Systems
- Cloud Backend Integration using Appwrite
- Secure Authentication and Authorization
- SMS Notification Integration
- Appointment Scheduling Workflow
- Secure File Upload Management
- Type-Safe Development with TypeScript
- Form Validation using Zod
- Responsive Web Design
- Modern Component Architecture
This project provided valuable experience in:
- Building modern healthcare management systems.
- Developing full-stack applications using Next.js.
- Integrating Appwrite cloud services.
- Implementing appointment scheduling workflows.
- Designing secure authentication mechanisms.
- Sending real-time SMS notifications.
- Managing secure healthcare document uploads.
- Applying TypeScript best practices.
- Creating scalable and maintainable architectures.
- Developing responsive and accessible user interfaces.
Planned enhancements include:
- Email Notifications
- Online Consultation Support
- Doctor Availability Management
- Medical Report Management
- Online Payments
- Patient Medical History Tracking
- Multi-Language Support
- Role-Based Authentication
- CI/CD Pipeline Integration
- Progressive Web App (PWA) Support
- Undergraduate Software Engineering Student
- Full-Stack Web Development Enthusiast
- Passionate about Cloud Technologies and Modern Web Applications
This project is intended for educational and portfolio purposes.
Feel free to fork the repository and explore the implementation.
If you found this project useful, consider giving it a ⭐ on GitHub.
GitHub Repository:









