# m2ammar/indus-hospital-operations-intelligence-database architecture

> Architecture diagram of the GitHub repository m2ammar/indus-hospital-operations-intelligence-database, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-30). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/m2ammar/indus-hospital-operations-intelligence-database
- Repository: https://github.com/m2ammar/indus-hospital-operations-intelligence-database

## Overview

This repository is a synthetic hospital-operations analytics project: Python scripts generate healthcare datasets, a MySQL schema and KPI queries support analysis, and exported CSVs feed a four-page Tableau dashboard. The main workflow runs core generation before the dependent emergency, OPD, and surgery generators, then loads the SQL database and uses CSV exports in Tableau. The README documents the SQL/export/dashboard stages; source excerpts show the generators’ dataset writes and inputs. Tableau workbook internals and SQL implementation were not sampled.

Main entry points: [`data/tableau`](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/tree/main/data/tableau) (Relationship model), [`data/raw`](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/tree/main/data/raw) (Core datasets), [`generate_emergency.py`](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/blob/main/generate_emergency.py) (Emergency generator), [`generate_opd.py`](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/blob/main/generate_opd.py) (OPD generator)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_generation["Synthetic Data"]
  node_core_gen["Core generator<br/>[generate_core.py]"]
  node_core_data["Core datasets"]
  node_emergency_gen["Emergency generator"]
  node_emergency_data["Emergency visits"]
  node_opd_gen["OPD generator<br/>[generate_opd.py]"]
  node_opd_data["OPD datasets"]
  node_surgery_gen["Surgery generator"]
  node_surgery_data["Surgery datasets"]
end

subgraph group_database["SQL Analytics"]
  node_mysql[("Hospital schema<br/>[indus_hospital.sql]")]
  node_kpis["23 KPI queries<br/>[indus_hospital.sql]"]
end

subgraph group_bi["Tableau Reporting"]
  node_csv_export["Cleaned CSVs"]
  node_tableau_model["Relationship model"]
  node_executive["Executive overview"]
  node_demographics["Patient demographics"]
  node_opd_emergency["OPD and emergency"]
  node_surgery_donations["Surgery and donations"]
end

node_analyst(("Project user"))
node_tableau_user(("Dashboard viewer"))

node_analyst -->|"runs first"| node_core_gen
node_core_gen -->|"writes datasets"| node_core_data
node_analyst -->|"runs next"| node_emergency_gen
node_emergency_gen -->|"reads patients"| node_core_data
node_emergency_gen -->|"writes visits"| node_emergency_data
node_analyst -->|"runs next"| node_opd_gen
node_opd_gen -->|"reads parent tables"| node_core_data
node_opd_gen -->|"writes visits"| node_opd_data
node_analyst -->|"runs next"| node_surgery_gen
node_surgery_gen -->|"reads admissions doctors"| node_core_data
node_surgery_gen -->|"writes surgeries"| node_surgery_data
node_analyst -->|"loads schema"| node_mysql
node_mysql -->|"supports analysis"| node_kpis
node_mysql -->|"exports cleaned data"| node_csv_export
node_csv_export -->|"imports CSVs"| node_tableau_model
node_tableau_model -->|"powers page"| node_executive
node_tableau_model -->|"powers page"| node_demographics
node_tableau_model -->|"powers page"| node_opd_emergency
node_tableau_model -->|"powers page"| node_surgery_donations
node_tableau_user -->|"views dashboard"| node_executive

click node_core_gen "https://github.com/m2ammar/indus-hospital-operations-intelligence-database/blob/main/generate_core.py"
click node_core_data "https://github.com/m2ammar/indus-hospital-operations-intelligence-database/tree/main/data/raw"
click node_emergency_gen "https://github.com/m2ammar/indus-hospital-operations-intelligence-database/blob/main/generate_emergency.py"
click node_emergency_data "https://github.com/m2ammar/indus-hospital-operations-intelligence-database/tree/main/data/raw"
click node_opd_gen "https://github.com/m2ammar/indus-hospital-operations-intelligence-database/blob/main/generate_opd.py"
click node_opd_data "https://github.com/m2ammar/indus-hospital-operations-intelligence-database/tree/main/data/raw"
click node_surgery_gen "https://github.com/m2ammar/indus-hospital-operations-intelligence-database/blob/main/generate_surgeries.py"
click node_surgery_data "https://github.com/m2ammar/indus-hospital-operations-intelligence-database/tree/main/data/raw"
click node_mysql "https://github.com/m2ammar/indus-hospital-operations-intelligence-database/blob/main/indus_hospital.sql"
click node_kpis "https://github.com/m2ammar/indus-hospital-operations-intelligence-database/blob/main/indus_hospital.sql"
click node_csv_export "https://github.com/m2ammar/indus-hospital-operations-intelligence-database/tree/main/data/tableau"
click node_tableau_model "https://github.com/m2ammar/indus-hospital-operations-intelligence-database/tree/main/data/tableau"

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_core_gen,node_core_data,node_emergency_gen,node_emergency_data,node_opd_gen,node_opd_data,node_surgery_gen,node_surgery_data,node_analyst,node_tableau_user toneBlue
class node_mysql,node_kpis toneAmber
class node_csv_export,node_tableau_model,node_executive,node_demographics,node_opd_emergency,node_surgery_donations toneMint
```

## Components

### Synthetic Data

- [Core generator](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/blob/main/generate_core.py): `generate_core.py`
- [Core datasets](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/tree/main/data/raw): `data/raw`
- [Emergency generator](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/blob/main/generate_emergency.py): `generate_emergency.py`
- [Emergency visits](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/tree/main/data/raw): `data/raw`
- [OPD generator](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/blob/main/generate_opd.py): `generate_opd.py`
- [OPD datasets](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/tree/main/data/raw): `data/raw`
- [Surgery generator](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/blob/main/generate_surgeries.py): `generate_surgeries.py`
- [Surgery datasets](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/tree/main/data/raw): `data/raw`

### SQL Analytics

- [Hospital schema](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/blob/main/indus_hospital.sql): `indus_hospital.sql`
- [23 KPI queries](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/blob/main/indus_hospital.sql): `indus_hospital.sql`

### Tableau Reporting

- [Cleaned CSVs](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/tree/main/data/tableau): `data/tableau`
- [Relationship model](https://github.com/m2ammar/indus-hospital-operations-intelligence-database/tree/main/data/tableau): `data/tableau`
- **Executive overview**
- **Patient demographics**
- **OPD and emergency**
- **Surgery and donations**

### Other components

- **Project user**
- **Dashboard viewer**

## Connections

- Project user → Core generator: runs first (evidence: `README.md`)
- Core generator → Core datasets: writes datasets (evidence: `generate_core.py`)
- Project user → Emergency generator: runs next (evidence: `README.md`)
- Emergency generator → Core datasets: reads patients (evidence: `generate_emergency.py`)
- Emergency generator → Emergency visits: writes visits (evidence: `generate_emergency.py`)
- Project user → OPD generator: runs next (evidence: `README.md`)
- OPD generator → Core datasets: reads parent tables (evidence: `generate_opd.py`)
- OPD generator → OPD datasets: writes visits (evidence: `generate_opd.py`)
- Project user → Surgery generator: runs next (evidence: `README.md`)
- Surgery generator → Core datasets: reads admissions doctors (evidence: `generate_surgeries.py`)
- Surgery generator → Surgery datasets: writes surgeries (evidence: `generate_surgeries.py`)
- Project user → Hospital schema: loads schema (evidence: `README.md`)
- Hospital schema → 23 KPI queries: supports analysis (evidence: `README.md`)
- Hospital schema → Cleaned CSVs: exports cleaned data (evidence: `README.md`)
- Cleaned CSVs → Relationship model: imports CSVs (evidence: `README.md`)
- Relationship model → Executive overview: powers page (evidence: `README.md`)
- Relationship model → Patient demographics: powers page (evidence: `README.md`)
- Relationship model → OPD and emergency: powers page (evidence: `README.md`)
- Relationship model → Surgery and donations: powers page (evidence: `README.md`)
- Dashboard viewer → Executive overview: views dashboard (evidence: `README.md`)
