# usmannasir/cyberpanel architecture

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

- Interactive diagram: https://gitdiagram.com/usmannasir/cyberpanel
- Repository: https://github.com/usmannasir/cyberpanel

## Overview

CyberPanel is a Django-based hosting control panel for managing websites, accounts, and server services. The typical operator workflow is to authenticate, use role-based access to request hosting changes, and have the panel apply them to server services while retaining configuration and status. The README also highlights backups, Docker, email, file management, and AI security scanning. The graph includes these documented capabilities, but their detailed runtime links are omitted where the supplied excerpts and reference index do not establish them.

Main entry points: [`cloudAPI/cloudManager.py`](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/cloudAPI/cloudManager.py) (Cloud API), [`plogical/virtualHostUtilities.py`](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/plogical/virtualHostUtilities.py) (Website management), [`dns/dnsManager.py`](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/dns/dnsManager.py) (DNS management), [`loginSystem/models.py`](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/loginSystem/models.py) (Accounts and permissions)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_access["Access and API"]
  node_login["Authentication<br/>[views.py]"]
  node_acl["Access control<br/>[acl.py]"]
  node_http["Panel request context<br/>[httpProc.py]"]
  node_cloudapi["Cloud API<br/>[cloudManager.py]"]
end

subgraph group_hosting["Hosting Services"]
  node_websites["Website management"]
  node_apache["Web server configuration<br/>[ApacheVhosts.py]"]
  node_dns["DNS management<br/>[dnsManager.py]"]
  node_databases["Database management<br/>[databaseManager.py]"]
  node_mail["Mail services"]
  node_ftp["FTP management<br/>[ftpManager.py]"]
  node_php["PHP management<br/>[phpManager.py]"]
end

subgraph group_operations["Server Operations"]
  node_firewall["Firewall management<br/>[firewallManager.py]"]
  node_services["Service management<br/>[serviceManager.py]"]
  node_commands["System command execution"]
end

subgraph group_data["Panel Data"]
  node_accountdata[("Accounts and permissions<br/>[models.py]")]
  node_dnsdata[("DNS records<br/>[models.py]")]
end

subgraph group_extras["Additional Capabilities"]
  node_backup["Backups and restores<br/>[backupManager.py]"]
  node_docker["Docker management<br/>[container.py]"]
  node_files["File manager<br/>[filemanager.py]"]
  node_scanner["AI security scanner"]
  node_webmail["Webmail<br/>[webmailManager.py]"]
end

node_operator(("Panel operator"))

node_operator -->|"signs in"| node_login
node_login -->|"checks account"| node_accountdata
node_http -->|"checks permissions"| node_acl
node_acl -->|"loads account"| node_accountdata
node_cloudapi -->|"uses website utilities"| node_websites
node_cloudapi -->|"uses DNS manager"| node_dns
node_cloudapi -->|"uses database manager"| node_databases
node_cloudapi -->|"uses firewall manager"| node_firewall
node_cloudapi -->|"uses FTP manager"| node_ftp
node_cloudapi -->|"uses mail manager"| node_mail
node_cloudapi -->|"uses backup manager"| node_backup
node_websites -->|"configures vhosts"| node_apache
node_websites -->|"configures DNS"| node_dns
node_websites -->|"uses PHP manager"| node_php
node_dns -->|"reads and writes"| node_dnsdata
node_firewall -->|"runs system commands"| node_commands
node_services -.->|"runs system commands"| node_commands
node_ftp -->|"reads account data"| node_accountdata
node_mail -->|"uses DNS records"| node_dnsdata

click node_login "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/loginSystem/views.py"
click node_acl "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/plogical/acl.py"
click node_http "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/plogical/httpProc.py"
click node_cloudapi "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/cloudAPI/cloudManager.py"
click node_websites "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/plogical/virtualHostUtilities.py"
click node_apache "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/ApachController/ApacheVhosts.py"
click node_dns "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/dns/dnsManager.py"
click node_databases "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/databases/databaseManager.py"
click node_mail "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/mailServer/mailserverManager.py"
click node_ftp "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/ftp/ftpManager.py"
click node_php "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/managePHP/phpManager.py"
click node_firewall "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/firewall/firewallManager.py"
click node_services "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/manageServices/serviceManager.py"
click node_commands "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/plogical/processUtilities.py"
click node_accountdata "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/loginSystem/models.py"
click node_dnsdata "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/dns/models.py"
click node_backup "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/backup/backupManager.py"
click node_docker "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/dockerManager/container.py"
click node_files "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/filemanager/filemanager.py"
click node_scanner "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/aiScanner/aiScannerManager.py"
click node_webmail "https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/webmail/webmailManager.py"

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_acl,node_http,node_cloudapi toneBlue
class node_websites,node_apache,node_dns,node_databases,node_mail,node_ftp,node_php toneAmber
class node_firewall,node_services,node_commands toneMint
class node_accountdata,node_dnsdata toneRose
class node_backup,node_docker,node_files,node_scanner,node_webmail,node_operator toneIndigo
```

## Components

### Access and API

- [Authentication](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/loginSystem/views.py): `loginSystem/views.py`
- [Access control](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/plogical/acl.py): `plogical/acl.py`
- [Panel request context](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/plogical/httpProc.py): `plogical/httpProc.py`
- [Cloud API](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/cloudAPI/cloudManager.py): `cloudAPI/cloudManager.py`

### Hosting Services

- [Website management](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/plogical/virtualHostUtilities.py): `plogical/virtualHostUtilities.py`
- [Web server configuration](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/ApachController/ApacheVhosts.py): `ApachController/ApacheVhosts.py`
- [DNS management](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/dns/dnsManager.py): `dns/dnsManager.py`
- [Database management](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/databases/databaseManager.py): `databases/databaseManager.py`
- [Mail services](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/mailServer/mailserverManager.py): `mailServer/mailserverManager.py`
- [FTP management](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/ftp/ftpManager.py): `ftp/ftpManager.py`
- [PHP management](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/managePHP/phpManager.py): `managePHP/phpManager.py`

### Server Operations

- [Firewall management](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/firewall/firewallManager.py): `firewall/firewallManager.py`
- [Service management](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/manageServices/serviceManager.py): `manageServices/serviceManager.py`
- [System command execution](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/plogical/processUtilities.py): `plogical/processUtilities.py`

### Panel Data

- [Accounts and permissions](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/loginSystem/models.py): `loginSystem/models.py`
- [DNS records](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/dns/models.py): `dns/models.py`

### Additional Capabilities

- [Backups and restores](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/backup/backupManager.py): `backup/backupManager.py`
- [Docker management](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/dockerManager/container.py): `dockerManager/container.py`
- [File manager](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/filemanager/filemanager.py): `filemanager/filemanager.py`
- [AI security scanner](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/aiScanner/aiScannerManager.py): `aiScanner/aiScannerManager.py`
- [Webmail](https://github.com/usmannasir/cyberpanel/blob/v3.0.5-dev/webmail/webmailManager.py): `webmail/webmailManager.py`

### Other components

- **Panel operator**

## Connections

- Panel operator → Authentication: signs in (evidence: `loginSystem/views.py`)
- Authentication → Accounts and permissions: checks account (evidence: `loginSystem/views.py`)
- Panel request context → Access control: checks permissions (evidence: `plogical/httpProc.py`)
- Access control → Accounts and permissions: loads account (evidence: `plogical/acl.py`)
- Cloud API → Website management: uses website utilities (evidence: `cloudAPI/cloudManager.py`)
- Cloud API → DNS management: uses DNS manager (evidence: `cloudAPI/cloudManager.py`)
- Cloud API → Database management: uses database manager (evidence: `cloudAPI/cloudManager.py`)
- Cloud API → Firewall management: uses firewall manager (evidence: `cloudAPI/cloudManager.py`)
- Cloud API → FTP management: uses FTP manager (evidence: `cloudAPI/cloudManager.py`)
- Cloud API → Mail services: uses mail manager (evidence: `cloudAPI/cloudManager.py`)
- Cloud API → Backups and restores: uses backup manager (evidence: `cloudAPI/cloudManager.py`)
- Website management → Web server configuration: configures vhosts (evidence: `plogical/virtualHostUtilities.py`)
- Website management → DNS management: configures DNS (evidence: `plogical/virtualHostUtilities.py`)
- Website management → PHP management: uses PHP manager (evidence: `plogical/virtualHostUtilities.py`)
- DNS management → DNS records: reads and writes (evidence: `dns/dnsManager.py`)
- Firewall management → System command execution: runs system commands (evidence: `firewall/firewallManager.py`)
- Service management → System command execution: runs system commands (evidence: `manageServices/serviceManager.py`)
- FTP management → Accounts and permissions: reads account data (evidence: `ftp/ftpManager.py`)
- Mail services → DNS records: uses DNS records (evidence: `mailServer/mailserverManager.py`)
