# aryaa-pawar/prakritiopd-dbms architecture

> Architecture diagram of the GitHub repository aryaa-pawar/prakritiopd-dbms, 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/aryaa-pawar/prakritiopd-dbms
- Repository: https://github.com/aryaa-pawar/prakritiopd-dbms

## Overview

PrakritiOPD is a MySQL database project for managing a Panchakarma outpatient clinic, rather than an application with a separate user interface. Its documented workflow covers patient and appointment records, treatment planning and therapy sessions, inventory use, and billing and payments, with staff management as a supporting capability. SQL files define the schema, sample data, queries, views, procedures, and triggers. The README documents how these files are run, but source excerpts were unavailable, so internal call wiring is not inferred.

Main entry points: [`schema.sql`](https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/schema.sql) (Clinic schema), [`data.sql`](https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/data.sql) (Sample records), [`procedures.sql`](https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/procedures.sql) (Stored procedures), [`triggers.sql`](https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/triggers.sql) (Business triggers)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_model["Clinic data model"]
  node_schema["Clinic schema<br/>[schema.sql]"]
  node_sampledata["Sample records<br/>[data.sql]"]
end

subgraph group_logic["Database automation"]
  node_procedures["Stored procedures<br/>[procedures.sql]"]
  node_triggers["Business triggers<br/>[triggers.sql]"]
end

subgraph group_access["Queries and reporting"]
  node_views["Reporting views<br/>[views.sql]"]
  node_queries["Operational queries<br/>[queries.sql]"]
  node_demoqueries["Demo queries<br/>[demo_queries.sql]"]
end

node_operator(("Database operator"))
node_mysql[("MySQL database")]

node_operator -->|"runs first"| node_schema
node_operator -->|"loads records"| node_sampledata
node_operator -->|"installs views"| node_views
node_operator -->|"installs procedures"| node_procedures
node_operator -->|"installs triggers"| node_triggers
node_operator -->|"runs queries"| node_queries
node_operator -->|"runs examples"| node_demoqueries
node_schema -->|"defines tables"| node_mysql
node_sampledata -->|"inserts records"| node_mysql
node_views -->|"defines views"| node_mysql
node_procedures -->|"defines procedures"| node_mysql
node_triggers -->|"defines triggers"| node_mysql
node_queries -->|"queries data"| node_mysql
node_demoqueries -->|"queries data"| node_mysql

click node_schema "https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/schema.sql"
click node_sampledata "https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/data.sql"
click node_procedures "https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/procedures.sql"
click node_triggers "https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/triggers.sql"
click node_views "https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/views.sql"
click node_queries "https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/queries.sql"
click node_demoqueries "https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/demo_queries.sql"

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_schema,node_sampledata toneBlue
class node_procedures,node_triggers,node_operator,node_mysql toneAmber
class node_views,node_queries,node_demoqueries toneMint
```

## Components

### Clinic data model

- [Clinic schema](https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/schema.sql): `schema.sql`
- [Sample records](https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/data.sql): `data.sql`

### Database automation

- [Stored procedures](https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/procedures.sql): `procedures.sql`
- [Business triggers](https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/triggers.sql): `triggers.sql`

### Queries and reporting

- [Reporting views](https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/views.sql): `views.sql`
- [Operational queries](https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/queries.sql): `queries.sql`
- [Demo queries](https://github.com/aryaa-pawar/prakritiopd-dbms/blob/main/demo_queries.sql): `demo_queries.sql`

### Other components

- **Database operator**
- **MySQL database**

## Connections

- Database operator → Clinic schema: runs first
- Database operator → Sample records: loads records
- Database operator → Reporting views: installs views
- Database operator → Stored procedures: installs procedures
- Database operator → Business triggers: installs triggers
- Database operator → Operational queries: runs queries
- Database operator → Demo queries: runs examples
- Clinic schema → MySQL database: defines tables
- Sample records → MySQL database: inserts records
- Reporting views → MySQL database: defines views
- Stored procedures → MySQL database: defines procedures
- Business triggers → MySQL database: defines triggers
- Operational queries → MySQL database: queries data
- Demo queries → MySQL database: queries data
