# sumitkumar1503/bloodbankmanagement architecture

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

- Interactive diagram: https://gitdiagram.com/sumitkumar1503/bloodbankmanagement
- Repository: https://github.com/sumitkumar1503/bloodbankmanagement

## Overview

This Django blood-bank system serves three roles: administrators manage people, donations, requests, and inventory; donors register, submit donations or requests, and review histories; patients register and request blood. The principal workflow is a donation submitted by a donor, reviewed by an administrator, and—if approved—added to stock; blood requests are similarly reviewed and consume stock when approved. Dashboards and histories expose status and counts. The graph follows sampled view logic and README-described capabilities; unsampled model definitions are represented only by their tree paths.

Main entry points: [`blood/views.py`](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/blood/views.py) (Admin workflows), [`donor/views.py`](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/donor/views.py) (Donor workflows), [`patient/views.py`](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/patient/views.py) (Patient workflows), [`bloodbankmanagement/settings.py`](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/bloodbankmanagement/settings.py) (SQLite database)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_routing["Web entry"]
  node_urls["URL dispatch<br/>[urls.py]"]
  node_donor_routes["Donor routes<br/>[urls.py]"]
  node_patient_routes["Patient routes<br/>[urls.py]"]
  node_admin_pages["Admin pages"]
  node_donor_pages["Donor pages"]
  node_patient_pages["Patient pages"]
end

subgraph group_people["User accounts"]
  node_donor_identity["Donor profiles<br/>[models.py]"]
  node_patient_identity["Patient profiles<br/>[models.py]"]
  node_accounts[("Django accounts<br/>[settings.py]")]
end

subgraph group_operations["Blood operations"]
  node_admin_views["Admin workflows<br/>[views.py]"]
  node_donor_views["Donor workflows<br/>[views.py]"]
  node_patient_views["Patient workflows<br/>[views.py]"]
end

subgraph group_records["Persistent records"]
  node_donation_records[("Donation records<br/>[models.py]")]
  node_blood_records[("Stock and requests<br/>[models.py]")]
  node_database[("SQLite database<br/>[settings.py]")]
end

node_browser_roles(("Admin, donor, patient"))

node_browser_roles -->|"sends requests"| node_urls
node_urls -->|"dispatches"| node_admin_views
node_urls -->|"includes routes"| node_donor_routes
node_urls -->|"includes routes"| node_patient_routes
node_donor_routes -->|"dispatches"| node_donor_views
node_patient_routes -->|"dispatches"| node_patient_views
node_admin_views -->|"reads and updates"| node_blood_records
node_admin_views -->|"reviews donations"| node_donation_records
node_admin_views -->|"manages profiles"| node_donor_identity
node_admin_views -->|"manages profiles"| node_patient_identity
node_admin_views -->|"renders"| node_admin_pages
node_donor_views -->|"reads and creates"| node_donor_identity
node_donor_views -->|"submits and lists"| node_donation_records
node_donor_views -->|"creates requests"| node_blood_records
node_donor_views -->|"renders"| node_donor_pages
node_patient_views -->|"reads and creates"| node_patient_identity
node_patient_views -->|"creates and lists requests"| node_blood_records
node_patient_views -->|"renders"| node_patient_pages
node_donor_views -->|"creates account"| node_accounts
node_patient_views -->|"creates account"| node_accounts
node_accounts -->|"persists"| node_database
node_blood_records -->|"persists"| node_database
node_donation_records -->|"persists"| node_database
node_donor_identity -->|"persists"| node_database
node_patient_identity -->|"persists"| node_database

click node_urls "https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/bloodbankmanagement/urls.py"
click node_donor_routes "https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/donor/urls.py"
click node_patient_routes "https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/patient/urls.py"
click node_admin_views "https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/blood/views.py"
click node_donor_views "https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/donor/views.py"
click node_patient_views "https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/patient/views.py"
click node_donor_identity "https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/donor/models.py"
click node_patient_identity "https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/patient/models.py"
click node_donation_records "https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/donor/models.py"
click node_blood_records "https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/blood/models.py"
click node_accounts "https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/bloodbankmanagement/settings.py"
click node_database "https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/bloodbankmanagement/settings.py"
click node_admin_pages "https://github.com/sumitkumar1503/bloodbankmanagement/tree/master/templates/blood"
click node_donor_pages "https://github.com/sumitkumar1503/bloodbankmanagement/tree/master/templates/donor"
click node_patient_pages "https://github.com/sumitkumar1503/bloodbankmanagement/tree/master/templates/patient"

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_urls,node_donor_routes,node_patient_routes,node_admin_pages,node_donor_pages,node_patient_pages toneBlue
class node_donor_identity,node_patient_identity,node_accounts toneAmber
class node_admin_views,node_donor_views,node_patient_views toneMint
class node_donation_records,node_blood_records,node_database toneRose
class node_browser_roles toneIndigo
```

## Components

### Web entry

- [URL dispatch](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/bloodbankmanagement/urls.py): `bloodbankmanagement/urls.py`
- [Donor routes](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/donor/urls.py): `donor/urls.py`
- [Patient routes](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/patient/urls.py): `patient/urls.py`
- [Admin pages](https://github.com/sumitkumar1503/bloodbankmanagement/tree/master/templates/blood): `templates/blood`
- [Donor pages](https://github.com/sumitkumar1503/bloodbankmanagement/tree/master/templates/donor): `templates/donor`
- [Patient pages](https://github.com/sumitkumar1503/bloodbankmanagement/tree/master/templates/patient): `templates/patient`

### User accounts

- [Donor profiles](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/donor/models.py): `donor/models.py`
- [Patient profiles](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/patient/models.py): `patient/models.py`
- [Django accounts](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/bloodbankmanagement/settings.py): `bloodbankmanagement/settings.py`

### Blood operations

- [Admin workflows](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/blood/views.py): `blood/views.py`
- [Donor workflows](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/donor/views.py): `donor/views.py`
- [Patient workflows](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/patient/views.py): `patient/views.py`

### Persistent records

- [Donation records](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/donor/models.py): `donor/models.py`
- [Stock and requests](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/blood/models.py): `blood/models.py`
- [SQLite database](https://github.com/sumitkumar1503/bloodbankmanagement/blob/master/bloodbankmanagement/settings.py): `bloodbankmanagement/settings.py`

### Other components

- **Admin, donor, patient**

## Connections

- Admin, donor, patient → URL dispatch: sends requests
- URL dispatch → Admin workflows: dispatches
- URL dispatch → Donor routes: includes routes
- URL dispatch → Patient routes: includes routes
- Donor routes → Donor workflows: dispatches
- Patient routes → Patient workflows: dispatches
- Admin workflows → Stock and requests: reads and updates
- Admin workflows → Donation records: reviews donations
- Admin workflows → Donor profiles: manages profiles
- Admin workflows → Patient profiles: manages profiles
- Admin workflows → Admin pages: renders
- Donor workflows → Donor profiles: reads and creates
- Donor workflows → Donation records: submits and lists
- Donor workflows → Stock and requests: creates requests
- Donor workflows → Donor pages: renders
- Patient workflows → Patient profiles: reads and creates
- Patient workflows → Stock and requests: creates and lists requests
- Patient workflows → Patient pages: renders
- Donor workflows → Django accounts: creates account
- Patient workflows → Django accounts: creates account
- Django accounts → SQLite database: persists
- Stock and requests → SQLite database: persists
- Donation records → SQLite database: persists
- Donor profiles → SQLite database: persists
- Patient profiles → SQLite database: persists
