# mohmmadsleet/project-graduation2 architecture

> Architecture diagram of the GitHub repository mohmmadsleet/project-graduation2, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-25). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/mohmmadsleet/project-graduation2
- Repository: https://github.com/mohmmadsleet/project-graduation2

## Overview

This is a static Arabic healthcare portal covering patient doctor discovery and appointment workflows, account access, AI diagnosis, and administrative management. The tree identifies the product areas, while sampled JavaScript confirms client-side search, booking-selection summaries, appointment cancellation navigation, and admin-page interactions. HTML wiring and any backend or persistence are not evidenced, so those connections are omitted.

Main entry points: [`pro_patient/js/main.js`](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/js/main.js) (Patient interactions), [`pro_admin/js/admin.js`](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/js/admin.js) (Admin interactions), [`index.html`](https://github.com/mohmmadsleet/project-graduation2/blob/main/index.html) (Home), [`login.html`](https://github.com/mohmmadsleet/project-graduation2/blob/main/login.html) (Login)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_access["Access and diagnosis"]
  node_home["Home<br/>[index.html]"]
  node_login["Login<br/>[login.html]"]
  node_register["Registration<br/>[register.html]"]
  node_diagnosis["AI diagnosis<br/>[ai-diagnosis.html]"]
end

subgraph group_patient["Patient care"]
  node_patient_home["Patient home<br/>[index.html]"]
  node_doctor_search["Doctor search<br/>[search.html]"]
  node_doctor_list["Doctor directory<br/>[doctors.html]"]
  node_doctor_select["Doctor selection"]
  node_doctor_profile["Doctor profile"]
  node_booking["Appointment booking<br/>[booking.html]"]
  node_confirm_booking["Booking confirmation"]
  node_booking_success["Booking success"]
  node_appointments["Appointments<br/>[appointments.html]"]
  node_cancel_appointment["Cancel appointment"]
  node_visit_details["Visit details<br/>[visit-details.html]"]
  node_medical_record["Medical record"]
  node_profile["Patient profile<br/>[profile.html]"]
end

subgraph group_admin["Administration"]
  node_admin_dashboard["Admin dashboard"]
  node_admin_users["User management<br/>[admin-users.html]"]
  node_admin_permissions["User permissions"]
  node_admin_disable["Disable user"]
  node_doctor_approvals["Doctor approvals"]
  node_doctor_review["Doctor review"]
  node_admin_reports["Admin reports<br/>[admin-reports.html]"]
  node_admin_activity["Admin activity"]
  node_admin_settings["Admin settings"]
end

subgraph group_shared["Shared interface behavior"]
  node_patient_behavior["Patient interactions<br/>[main.js]"]
  node_admin_behavior["Admin interactions<br/>[admin.js]"]
  node_header["Shared header<br/>[header.html]"]
  node_footer["Shared footer<br/>[footer.html]"]
end

node_patient_actor(("Patient"))
node_admin_actor(("Administrator"))

node_patient_actor -->|"opens portal"| node_home
node_patient_actor -->|"accesses account"| node_login
node_patient_actor -->|"creates account"| node_register
node_patient_actor -->|"requests diagnosis"| node_diagnosis
node_patient_actor -->|"opens portal"| node_patient_home
node_admin_actor -->|"opens dashboard"| node_admin_dashboard
node_patient_behavior -->|"filters doctors"| node_doctor_search
node_patient_behavior -->|"updates selection summary"| node_booking
node_patient_behavior -->|"redirects after cancellation"| node_appointments
node_admin_behavior -->|"filters user cards"| node_admin_users
node_admin_behavior -->|"handles settings form"| node_admin_settings

click node_home "https://github.com/mohmmadsleet/project-graduation2/blob/main/index.html"
click node_login "https://github.com/mohmmadsleet/project-graduation2/blob/main/login.html"
click node_register "https://github.com/mohmmadsleet/project-graduation2/blob/main/register.html"
click node_diagnosis "https://github.com/mohmmadsleet/project-graduation2/blob/main/ai-diagnosis.html"
click node_patient_home "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/index.html"
click node_doctor_search "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/search.html"
click node_doctor_list "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/doctors.html"
click node_doctor_select "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/doctors-select.html"
click node_doctor_profile "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/doctor-profile.html"
click node_booking "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/booking.html"
click node_confirm_booking "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/confirm-booking.html"
click node_booking_success "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/booking-success.html"
click node_appointments "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/appointments.html"
click node_cancel_appointment "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/cancel-appointment.html"
click node_visit_details "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/visit-details.html"
click node_medical_record "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/medical-record.html"
click node_profile "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/profile.html"
click node_admin_dashboard "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-dashboard.html"
click node_admin_users "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-users.html"
click node_admin_permissions "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-user-permissions.html"
click node_admin_disable "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-disable-user.html"
click node_doctor_approvals "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-doctor-approvals.html"
click node_doctor_review "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-doctor-review.html"
click node_admin_reports "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-reports.html"
click node_admin_activity "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-activity.html"
click node_admin_settings "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-settings.html"
click node_patient_behavior "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/js/main.js"
click node_admin_behavior "https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/js/admin.js"
click node_header "https://github.com/mohmmadsleet/project-graduation2/blob/main/header.html"
click node_footer "https://github.com/mohmmadsleet/project-graduation2/blob/main/footer.html"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_home,node_login,node_register,node_diagnosis toneBlue
class node_patient_home,node_doctor_search,node_doctor_list,node_doctor_select,node_doctor_profile,node_booking,node_confirm_booking,node_booking_success,node_appointments,node_cancel_appointment,node_visit_details,node_medical_record,node_profile toneAmber
class node_admin_dashboard,node_admin_users,node_admin_permissions,node_admin_disable,node_doctor_approvals,node_doctor_review,node_admin_reports,node_admin_activity,node_admin_settings toneMint
class node_patient_behavior,node_admin_behavior,node_header,node_footer toneRose
class node_patient_actor,node_admin_actor toneIndigo
```

## Components

### Access and diagnosis

- [Home](https://github.com/mohmmadsleet/project-graduation2/blob/main/index.html): `index.html`
- [Login](https://github.com/mohmmadsleet/project-graduation2/blob/main/login.html): `login.html`
- [Registration](https://github.com/mohmmadsleet/project-graduation2/blob/main/register.html): `register.html`
- [AI diagnosis](https://github.com/mohmmadsleet/project-graduation2/blob/main/ai-diagnosis.html): `ai-diagnosis.html`

### Patient care

- [Patient home](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/index.html): `pro_patient/index.html`
- [Doctor search](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/search.html): `pro_patient/search.html`
- [Doctor directory](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/doctors.html): `pro_patient/doctors.html`
- [Doctor selection](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/doctors-select.html): `pro_patient/doctors-select.html`
- [Doctor profile](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/doctor-profile.html): `pro_patient/doctor-profile.html`
- [Appointment booking](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/booking.html): `pro_patient/booking.html`
- [Booking confirmation](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/confirm-booking.html): `pro_patient/confirm-booking.html`
- [Booking success](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/booking-success.html): `pro_patient/booking-success.html`
- [Appointments](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/appointments.html): `pro_patient/appointments.html`
- [Cancel appointment](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/cancel-appointment.html): `pro_patient/cancel-appointment.html`
- [Visit details](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/visit-details.html): `pro_patient/visit-details.html`
- [Medical record](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/medical-record.html): `pro_patient/medical-record.html`
- [Patient profile](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/profile.html): `pro_patient/profile.html`

### Administration

- [Admin dashboard](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-dashboard.html): `pro_admin/admin-dashboard.html`
- [User management](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-users.html): `pro_admin/admin-users.html`
- [User permissions](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-user-permissions.html): `pro_admin/admin-user-permissions.html`
- [Disable user](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-disable-user.html): `pro_admin/admin-disable-user.html`
- [Doctor approvals](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-doctor-approvals.html): `pro_admin/admin-doctor-approvals.html`
- [Doctor review](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-doctor-review.html): `pro_admin/admin-doctor-review.html`
- [Admin reports](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-reports.html): `pro_admin/admin-reports.html`
- [Admin activity](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-activity.html): `pro_admin/admin-activity.html`
- [Admin settings](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/admin-settings.html): `pro_admin/admin-settings.html`

### Shared interface behavior

- [Patient interactions](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_patient/js/main.js): `pro_patient/js/main.js`
- [Admin interactions](https://github.com/mohmmadsleet/project-graduation2/blob/main/pro_admin/js/admin.js): `pro_admin/js/admin.js`
- [Shared header](https://github.com/mohmmadsleet/project-graduation2/blob/main/header.html): `header.html`
- [Shared footer](https://github.com/mohmmadsleet/project-graduation2/blob/main/footer.html): `footer.html`

### Other components

- **Patient**
- **Administrator**

## Connections

- Patient → Home: opens portal
- Patient → Login: accesses account
- Patient → Registration: creates account
- Patient → AI diagnosis: requests diagnosis
- Patient → Patient home: opens portal
- Administrator → Admin dashboard: opens dashboard
- Patient interactions → Doctor search: filters doctors
- Patient interactions → Appointment booking: updates selection summary
- Patient interactions → Appointments: redirects after cancellation
- Admin interactions → User management: filters user cards
- Admin interactions → Admin settings: handles settings form
