# dalysdigital/bam-security- architecture

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

- Interactive diagram: https://gitdiagram.com/dalysdigital/bam-security-
- Repository: https://github.com/dalysdigital/bam-security-

## Overview

BAM is a public security-services website with member ID issuance and public membership verification, backed by a documented PHP/MySQL administration system. The main public workflow is a visitor reaching the site, viewing its content, then verifying a member using an ID or QR code; administrators manage membership and site content. The README documents broader admin modules, but their implementation files are absent from the supplied tree, so they are represented as an unsampled subsystem. Edges reflect shown calls or README statements.

Main entry points: [`home.html`](https://github.com/dalysdigital/bam-security-/blob/main/home.html) (Public Website), [`verify.php`](https://github.com/dalysdigital/bam-security-/blob/main/verify.php) (Public Verification), [`frontend-cms.js`](https://github.com/dalysdigital/bam-security-/blob/main/frontend-cms.js) (Content Renderer), [`install.php`](https://github.com/dalysdigital/bam-security-/blob/main/install.php) (Installer)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_public["Public Website"]
  node_home["Public Website<br/>[home.html]"]
  node_public_behavior["Site Interactions<br/>[app.js]"]
  node_content_client["Content Renderer<br/>[frontend-cms.js]"]
  node_content_api["Content Endpoint"]
  node_enquiry_channels["Enquiry Channels"]
end

subgraph group_membership["Member Verification"]
  node_member[("Member")]
  node_id_card["Digital ID<br/>[id.php]"]
  node_verification["Public Verification<br/>[verify.php]"]
end

subgraph group_admin["Administration"]
  node_admin_system["Admin System"]
end

subgraph group_setup["Installation"]
  node_installer["Installer<br/>[install.php]"]
  node_schema["Database Schema"]
end

node_visitor(("Visitor"))
node_mysql[("MySQL Database")]

node_visitor -->|"visits"| node_home
node_home -->|"runs"| node_public_behavior
node_content_client -->|"fetches content"| node_content_api
node_content_client -->|"updates display"| node_home
node_public_behavior -->|"opens channel"| node_enquiry_channels
node_visitor -->|"requests verification"| node_verification
node_id_card -->|"links to verify"| node_verification
node_verification -->|"reads member"| node_mysql
node_admin_system -.->|"manages records"| node_mysql
node_admin_system -.->|"manages membership"| node_member
node_admin_system -.->|"edits site content"| node_content_api
node_installer -->|"loads schema"| node_schema
node_installer -->|"creates tables"| node_mysql

click node_home "https://github.com/dalysdigital/bam-security-/blob/main/home.html"
click node_public_behavior "https://github.com/dalysdigital/bam-security-/blob/main/app.js"
click node_content_client "https://github.com/dalysdigital/bam-security-/blob/main/frontend-cms.js"
click node_content_api "https://github.com/dalysdigital/bam-security-/blob/main/frontend_content.php"
click node_id_card "https://github.com/dalysdigital/bam-security-/blob/main/id.php"
click node_verification "https://github.com/dalysdigital/bam-security-/blob/main/verify.php"
click node_installer "https://github.com/dalysdigital/bam-security-/blob/main/install.php"

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_public_behavior,node_content_client,node_content_api,node_enquiry_channels toneBlue
class node_member,node_id_card,node_verification,node_mysql toneAmber
class node_admin_system toneMint
class node_installer,node_schema toneRose
class node_visitor toneIndigo
```

## Components

### Public Website

- [Public Website](https://github.com/dalysdigital/bam-security-/blob/main/home.html): `home.html`
- [Site Interactions](https://github.com/dalysdigital/bam-security-/blob/main/app.js): `app.js`
- [Content Renderer](https://github.com/dalysdigital/bam-security-/blob/main/frontend-cms.js): `frontend-cms.js`
- [Content Endpoint](https://github.com/dalysdigital/bam-security-/blob/main/frontend_content.php): `frontend_content.php`
- **Enquiry Channels**

### Member Verification

- **Member**
- [Digital ID](https://github.com/dalysdigital/bam-security-/blob/main/id.php): `id.php`
- [Public Verification](https://github.com/dalysdigital/bam-security-/blob/main/verify.php): `verify.php`

### Administration

- **Admin System**

### Installation

- [Installer](https://github.com/dalysdigital/bam-security-/blob/main/install.php): `install.php`
- **Database Schema**

### Other components

- **Visitor**
- **MySQL Database**

## Connections

- Visitor → Public Website: visits (evidence: `README.md`)
- Public Website → Site Interactions: runs (evidence: `README.md`)
- Content Renderer → Content Endpoint: fetches content (evidence: `frontend-cms.js`)
- Content Renderer → Public Website: updates display (evidence: `frontend-cms.js`)
- Site Interactions → Enquiry Channels: opens channel (evidence: `app.js`)
- Visitor → Public Verification: requests verification (evidence: `README.md`)
- Digital ID → Public Verification: links to verify (evidence: `id.php`)
- Public Verification → MySQL Database: reads member (evidence: `verify.php`)
- Admin System → MySQL Database: manages records (evidence: `README.md`)
- Admin System → Member: manages membership (evidence: `README.md`)
- Admin System → Content Endpoint: edits site content (evidence: `README.md`)
- Installer → Database Schema: loads schema (evidence: `install.php`)
- Installer → MySQL Database: creates tables (evidence: `install.php`)
