# birondo-ops/capstone architecture

> Architecture diagram of the GitHub repository birondo-ops/capstone, 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/birondo-ops/capstone
- Repository: https://github.com/birondo-ops/capstone

## Overview

This is an administrator-facing inventory and sales operations system for a cleaning-products distributor. The main workflow is to maintain product stock, record wholesale dispatches or retailer sales, settle dispatch remittances, and review resulting sales and stock movement for operational decisions. The PHP pages share a MySQL database; a separate Python job derives monthly revenue forecasts. README evidence establishes the product goals, while several page implementations were not sampled, so their detailed call wiring is not inferred.

Main entry points: [`auth/conn.php`](https://github.com/birondo-ops/capstone/blob/main/auth/conn.php) (Database connection), [`dispatchers.php`](https://github.com/birondo-ops/capstone/blob/main/dispatchers.php) (Dispatch operations), [`inventory.php`](https://github.com/birondo-ops/capstone/blob/main/inventory.php) (Inventory management), [`capstone_1 (2).sql`](https://github.com/birondo-ops/capstone/blob/main/capstone_1%20(2).sql) (MySQL database)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_access["Access and overview"]
  node_login["Login and recovery<br/>[login.php]"]
  node_connection["Database connection<br/>[conn.php]"]
  node_dashboard["Dashboard<br/>[index.php]"]
end

subgraph group_stock["Inventory operations"]
  node_inventory["Inventory management<br/>[inventory.php]"]
  node_product_edits["Product edits<br/>[edit_product.php]"]
  node_stock_insert["Stock registration<br/>[insert_into.php]"]
  node_stock_logs["Stock movement logs<br/>[inventory_logs.php]"]
end

subgraph group_commerce["Sales and dispatch"]
  node_dispatch_ui["Dispatch operations<br/>[dispatchers.php]"]
  node_dispatch_control["Dispatch controller"]
  node_dispatch_edit["Dispatch adjustments<br/>[edit_despatch.php]"]
  node_remittance["Dispatch remittance"]
  node_retailer["Retailer sales<br/>[retailer.php]"]
  node_sales_history["Sales history<br/>[sales.php]"]
  node_balances["Worker balances<br/>[balance.php]"]
end

subgraph group_insight["Reporting and decisions"]
  node_audit["Audit trail<br/>[audit_trail.php]"]
  node_settings["System settings<br/>[setting.php]"]
  node_forecast["Revenue forecast<br/>[forecast.py]"]
end

node_admin(("Administrator"))
node_database[("MySQL database<br/>[capstone_1 &#40;2&#41;.sql]")]
node_mail{{"SMTP mail service"}}

node_admin -->|"signs in"| node_login
node_login -->|"queries users"| node_connection
node_login -.->|"sends recovery"| node_mail
node_admin -->|"views metrics"| node_dashboard
node_dashboard -->|"queries reports"| node_connection
node_connection -->|"connects"| node_database
node_admin -->|"manages stock"| node_inventory
node_inventory -->|"submits stock"| node_stock_insert
node_inventory -->|"edits products"| node_product_edits
node_inventory -->|"reads products"| node_connection
node_stock_insert -->|"writes stock"| node_connection
node_product_edits -->|"updates products"| node_connection
node_product_edits -->|"stores images"| node_database
node_admin -->|"reviews movements"| node_stock_logs
node_stock_logs -->|"queries logs"| node_connection
node_admin -->|"records dispatch"| node_dispatch_ui
node_dispatch_ui -->|"invokes dispatch"| node_dispatch_control
node_dispatch_ui -->|"loads dispatch data"| node_connection
node_dispatch_control -->|"reads and updates"| node_database
node_dispatch_ui -->|"adjusts quantities"| node_dispatch_edit
node_dispatch_edit -->|"updates dispatch"| node_connection
node_dispatch_ui -->|"opens settlement"| node_remittance
node_remittance -->|"records settlement"| node_connection
node_admin -->|"records retail sales"| node_retailer
node_retailer -->|"processes orders"| node_connection
node_admin -->|"reviews sales"| node_sales_history
node_sales_history -->|"queries sales"| node_connection
node_admin -->|"reviews balances"| node_balances
node_balances -->|"reads balances"| node_connection
node_admin -->|"reviews activity"| node_audit
node_audit -->|"queries audit data"| node_connection
node_admin -->|"configures system"| node_settings
node_settings -->|"reads settings"| node_connection
node_forecast -->|"reads revenue and saves prediction"| node_database

click node_login "https://github.com/birondo-ops/capstone/blob/main/auth/login.php"
click node_connection "https://github.com/birondo-ops/capstone/blob/main/auth/conn.php"
click node_dashboard "https://github.com/birondo-ops/capstone/blob/main/index.php"
click node_inventory "https://github.com/birondo-ops/capstone/blob/main/inventory.php"
click node_product_edits "https://github.com/birondo-ops/capstone/blob/main/function/edit_product.php"
click node_stock_insert "https://github.com/birondo-ops/capstone/blob/main/function/insert_into.php"
click node_stock_logs "https://github.com/birondo-ops/capstone/blob/main/inventory_logs.php"
click node_dispatch_ui "https://github.com/birondo-ops/capstone/blob/main/dispatchers.php"
click node_dispatch_control "https://github.com/birondo-ops/capstone/blob/main/function/dispatchController.php"
click node_dispatch_edit "https://github.com/birondo-ops/capstone/blob/main/function/edit_despatch.php"
click node_remittance "https://github.com/birondo-ops/capstone/blob/main/function/afternoon_remit.php"
click node_retailer "https://github.com/birondo-ops/capstone/blob/main/retailer.php"
click node_sales_history "https://github.com/birondo-ops/capstone/blob/main/sales.php"
click node_balances "https://github.com/birondo-ops/capstone/blob/main/balance.php"
click node_audit "https://github.com/birondo-ops/capstone/blob/main/audit_trail.php"
click node_settings "https://github.com/birondo-ops/capstone/blob/main/setting.php"
click node_forecast "https://github.com/birondo-ops/capstone/blob/main/py_ml/forecast.py"
click node_database "https://github.com/birondo-ops/capstone/blob/main/capstone_1%20(2).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_login,node_connection,node_dashboard toneBlue
class node_inventory,node_product_edits,node_stock_insert,node_stock_logs,node_database toneAmber
class node_dispatch_ui,node_dispatch_control,node_dispatch_edit,node_remittance,node_retailer,node_sales_history,node_balances toneMint
class node_audit,node_settings,node_forecast toneRose
class node_admin,node_mail toneIndigo
```

## Components

### Access and overview

- [Login and recovery](https://github.com/birondo-ops/capstone/blob/main/auth/login.php): `auth/login.php`
- [Database connection](https://github.com/birondo-ops/capstone/blob/main/auth/conn.php): `auth/conn.php`
- [Dashboard](https://github.com/birondo-ops/capstone/blob/main/index.php): `index.php`

### Inventory operations

- [Inventory management](https://github.com/birondo-ops/capstone/blob/main/inventory.php): `inventory.php`
- [Product edits](https://github.com/birondo-ops/capstone/blob/main/function/edit_product.php): `function/edit_product.php`
- [Stock registration](https://github.com/birondo-ops/capstone/blob/main/function/insert_into.php): `function/insert_into.php`
- [Stock movement logs](https://github.com/birondo-ops/capstone/blob/main/inventory_logs.php): `inventory_logs.php`

### Sales and dispatch

- [Dispatch operations](https://github.com/birondo-ops/capstone/blob/main/dispatchers.php): `dispatchers.php`
- [Dispatch controller](https://github.com/birondo-ops/capstone/blob/main/function/dispatchController.php): `function/dispatchController.php`
- [Dispatch adjustments](https://github.com/birondo-ops/capstone/blob/main/function/edit_despatch.php): `function/edit_despatch.php`
- [Dispatch remittance](https://github.com/birondo-ops/capstone/blob/main/function/afternoon_remit.php): `function/afternoon_remit.php`
- [Retailer sales](https://github.com/birondo-ops/capstone/blob/main/retailer.php): `retailer.php`
- [Sales history](https://github.com/birondo-ops/capstone/blob/main/sales.php): `sales.php`
- [Worker balances](https://github.com/birondo-ops/capstone/blob/main/balance.php): `balance.php`

### Reporting and decisions

- [Audit trail](https://github.com/birondo-ops/capstone/blob/main/audit_trail.php): `audit_trail.php`
- [System settings](https://github.com/birondo-ops/capstone/blob/main/setting.php): `setting.php`
- [Revenue forecast](https://github.com/birondo-ops/capstone/blob/main/py_ml/forecast.py): `py_ml/forecast.py`

### Other components

- **Administrator**
- [MySQL database](https://github.com/birondo-ops/capstone/blob/main/capstone_1%20(2).sql): `capstone_1 (2).sql`
- **SMTP mail service**

## Connections

- Administrator → Login and recovery: signs in
- Login and recovery → Database connection: queries users
- Login and recovery → SMTP mail service: sends recovery
- Administrator → Dashboard: views metrics
- Dashboard → Database connection: queries reports
- Database connection → MySQL database: connects
- Administrator → Inventory management: manages stock
- Inventory management → Stock registration: submits stock
- Inventory management → Product edits: edits products
- Inventory management → Database connection: reads products
- Stock registration → Database connection: writes stock
- Product edits → Database connection: updates products
- Product edits → MySQL database: stores images
- Administrator → Stock movement logs: reviews movements
- Stock movement logs → Database connection: queries logs
- Administrator → Dispatch operations: records dispatch
- Dispatch operations → Dispatch controller: invokes dispatch
- Dispatch operations → Database connection: loads dispatch data
- Dispatch controller → MySQL database: reads and updates
- Dispatch operations → Dispatch adjustments: adjusts quantities
- Dispatch adjustments → Database connection: updates dispatch
- Dispatch operations → Dispatch remittance: opens settlement
- Dispatch remittance → Database connection: records settlement
- Administrator → Retailer sales: records retail sales
- Retailer sales → Database connection: processes orders
- Administrator → Sales history: reviews sales
- Sales history → Database connection: queries sales
- Administrator → Worker balances: reviews balances
- Worker balances → Database connection: reads balances
- Administrator → Audit trail: reviews activity
- Audit trail → Database connection: queries audit data
- Administrator → System settings: configures system
- System settings → Database connection: reads settings
- Revenue forecast → MySQL database: reads revenue and saves prediction
