# bkstar123/mstools architecture

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

- Interactive diagram: https://gitdiagram.com/bkstar123/mstools
- Repository: https://github.com/bkstar123/mstools

## Overview

MSTools is a Laravel operations console for SSL and certificate work, Cloudflare zone/SaaS management, Pingdom monitoring, and go-live tracking. Users submit requests through the CMS; SSL and Pingdom controllers validate and throttle requests, then dispatch background jobs for long-running tasks. Results and alerts are presented through the application’s notification and real-time capabilities. The sampled controllers establish the SSL and Pingdom dispatch paths; other documented capabilities are represented at subsystem level because their controller/job wiring was not sampled.

Main entry points: [`routes/web.php`](https://github.com/bkstar123/mstools/blob/master/routes/web.php) (Web routes), [`app/Http/Controllers/PingdomController.php`](https://github.com/bkstar123/mstools/blob/master/app/Http/Controllers/PingdomController.php) (Pingdom tools), [`app/Http/Controllers/GeneralSSLToolController.php`](https://github.com/bkstar123/mstools/blob/master/app/Http/Controllers/GeneralSSLToolController.php) (SSL tools), [`app/Notifications`](https://github.com/bkstar123/mstools/tree/master/app/Notifications) (Notifications)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_entry["CMS entry"]
  node_web_routes["Web routes<br/>[web.php]"]
end

subgraph group_ssl["SSL tools"]
  node_ssl_controller["SSL tools"]
  node_ssl_rules["Certificate checks<br/>[SslCertValid.php]"]
  node_ssl_domain_job["Domain SSL verification"]
end

subgraph group_cloudflare["Cloudflare"]
  node_ssl_zone_job["Zone SSL verification"]
  node_cert_upload_job["Certificate upload"]
  node_cf_controller["Cloudflare tools"]
  node_cf_dns_controller["DNS tools"]
  node_cf_firewall_controller["Firewall rules"]
end

subgraph group_monitoring["Monitoring"]
  node_ping_controller["Pingdom tools"]
  node_ping_export["Check export"]
  node_ping_details["Check details"]
  node_ping_summary["Uptime summaries"]
  node_ping_availability["Availability tests"]
  node_tracking_controller["Go-live tracking"]
  node_tracking_store[("Tracking records<br/>[Tracking.php]")]
  node_conversion["HTTP log conversion"]
end

subgraph group_async["Async results"]
  node_notifications["Notifications"]
  node_events["Completion events"]
end

node_operator(("CMS user"))
node_cloudflare{{"Cloudflare services"}}
node_pingdom{{"Pingdom API"}}
node_pusher{{"Pusher broadcast"}}
node_slack{{"Slack alerts"}}

node_operator -->|"submits requests"| node_web_routes
node_web_routes -->|"routes to"| node_ssl_controller
node_web_routes -->|"routes to"| node_ping_controller
node_web_routes -->|"routes to"| node_cf_controller
node_web_routes -->|"routes to"| node_cf_dns_controller
node_web_routes -->|"routes to"| node_cf_firewall_controller
node_web_routes -->|"routes to"| node_tracking_controller
node_ssl_controller -->|"validates with"| node_ssl_rules
node_ssl_controller -->|"dispatches"| node_ssl_domain_job
node_ssl_controller -->|"dispatches"| node_ssl_zone_job
node_ssl_controller -->|"dispatches"| node_cert_upload_job
node_ssl_zone_job -->|"checks zones"| node_cloudflare
node_cert_upload_job -->|"uploads certificate"| node_cloudflare
node_ping_controller -->|"dispatches"| node_ping_export
node_ping_controller -->|"dispatches"| node_ping_details
node_ping_controller -->|"dispatches"| node_ping_summary
node_ping_controller -->|"dispatches"| node_ping_availability
node_ping_controller -->|"queries API"| node_pingdom
node_tracking_controller -->|"reads and writes"| node_tracking_store
node_ping_export -.->|"exports checks"| node_pingdom
node_ping_details -.->|"gets details"| node_pingdom
node_ping_summary -.->|"gets summaries"| node_pingdom
node_ping_availability -.->|"tests hosts"| node_pingdom
node_conversion -.->|"reports completion"| node_notifications
node_events -.->|"triggers"| node_notifications
node_notifications -.->|"broadcasts updates"| node_pusher
node_notifications -.->|"sends alerts"| node_slack

click node_web_routes "https://github.com/bkstar123/mstools/blob/master/routes/web.php"
click node_ssl_controller "https://github.com/bkstar123/mstools/blob/master/app/Http/Controllers/GeneralSSLToolController.php"
click node_ssl_rules "https://github.com/bkstar123/mstools/blob/master/app/Rules/SslCertValid.php"
click node_ssl_domain_job "https://github.com/bkstar123/mstools/blob/master/app/Jobs/VerifyDomainSSLData.php"
click node_ssl_zone_job "https://github.com/bkstar123/mstools/blob/master/app/Jobs/VerifyCFZoneCustomSSL.php"
click node_cert_upload_job "https://github.com/bkstar123/mstools/blob/master/app/Jobs/UploadCustomCertificateToCloudflare.php"
click node_cf_controller "https://github.com/bkstar123/mstools/blob/master/app/Http/Controllers/CF4SaaSGeneralController.php"
click node_cf_dns_controller "https://github.com/bkstar123/mstools/blob/master/app/Http/Controllers/CFDNSController.php"
click node_cf_firewall_controller "https://github.com/bkstar123/mstools/blob/master/app/Http/Controllers/CFFirewallController.php"
click node_ping_controller "https://github.com/bkstar123/mstools/blob/master/app/Http/Controllers/PingdomController.php"
click node_ping_export "https://github.com/bkstar123/mstools/blob/master/app/Jobs/ExportPingdomChecks.php"
click node_ping_details "https://github.com/bkstar123/mstools/blob/master/app/Jobs/GetPingdomChecksDetails.php"
click node_ping_summary "https://github.com/bkstar123/mstools/blob/master/app/Jobs/GetPingdomChecksAvgSummary.php"
click node_ping_availability "https://github.com/bkstar123/mstools/blob/master/app/Jobs/PingdomHostnameAvailabilityTest.php"
click node_tracking_controller "https://github.com/bkstar123/mstools/blob/master/app/Http/Controllers/TrackingController.php"
click node_tracking_store "https://github.com/bkstar123/mstools/blob/master/app/Tracking.php"
click node_conversion "https://github.com/bkstar123/mstools/blob/master/app/Jobs/ConvertHttpLogJsonToCSV.php"
click node_notifications "https://github.com/bkstar123/mstools/tree/master/app/Notifications"
click node_events "https://github.com/bkstar123/mstools/tree/master/app/Events"

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_web_routes,node_operator toneBlue
class node_ssl_controller,node_ssl_rules,node_ssl_domain_job toneAmber
class node_ssl_zone_job,node_cert_upload_job,node_cf_controller,node_cf_dns_controller,node_cf_firewall_controller,node_pingdom toneMint
class node_ping_controller,node_ping_export,node_ping_details,node_ping_summary,node_ping_availability,node_tracking_controller,node_tracking_store,node_conversion toneRose
class node_notifications,node_events,node_cloudflare,node_pusher,node_slack toneIndigo
```

## Components

### CMS entry

- [Web routes](https://github.com/bkstar123/mstools/blob/master/routes/web.php): `routes/web.php`

### SSL tools

- [SSL tools](https://github.com/bkstar123/mstools/blob/master/app/Http/Controllers/GeneralSSLToolController.php): `app/Http/Controllers/GeneralSSLToolController.php`
- [Certificate checks](https://github.com/bkstar123/mstools/blob/master/app/Rules/SslCertValid.php): `app/Rules/SslCertValid.php`
- [Domain SSL verification](https://github.com/bkstar123/mstools/blob/master/app/Jobs/VerifyDomainSSLData.php): `app/Jobs/VerifyDomainSSLData.php`

### Cloudflare

- [Zone SSL verification](https://github.com/bkstar123/mstools/blob/master/app/Jobs/VerifyCFZoneCustomSSL.php): `app/Jobs/VerifyCFZoneCustomSSL.php`
- [Certificate upload](https://github.com/bkstar123/mstools/blob/master/app/Jobs/UploadCustomCertificateToCloudflare.php): `app/Jobs/UploadCustomCertificateToCloudflare.php`
- [Cloudflare tools](https://github.com/bkstar123/mstools/blob/master/app/Http/Controllers/CF4SaaSGeneralController.php): `app/Http/Controllers/CF4SaaSGeneralController.php`
- [DNS tools](https://github.com/bkstar123/mstools/blob/master/app/Http/Controllers/CFDNSController.php): `app/Http/Controllers/CFDNSController.php`
- [Firewall rules](https://github.com/bkstar123/mstools/blob/master/app/Http/Controllers/CFFirewallController.php): `app/Http/Controllers/CFFirewallController.php`

### Monitoring

- [Pingdom tools](https://github.com/bkstar123/mstools/blob/master/app/Http/Controllers/PingdomController.php): `app/Http/Controllers/PingdomController.php`
- [Check export](https://github.com/bkstar123/mstools/blob/master/app/Jobs/ExportPingdomChecks.php): `app/Jobs/ExportPingdomChecks.php`
- [Check details](https://github.com/bkstar123/mstools/blob/master/app/Jobs/GetPingdomChecksDetails.php): `app/Jobs/GetPingdomChecksDetails.php`
- [Uptime summaries](https://github.com/bkstar123/mstools/blob/master/app/Jobs/GetPingdomChecksAvgSummary.php): `app/Jobs/GetPingdomChecksAvgSummary.php`
- [Availability tests](https://github.com/bkstar123/mstools/blob/master/app/Jobs/PingdomHostnameAvailabilityTest.php): `app/Jobs/PingdomHostnameAvailabilityTest.php`
- [Go-live tracking](https://github.com/bkstar123/mstools/blob/master/app/Http/Controllers/TrackingController.php): `app/Http/Controllers/TrackingController.php`
- [Tracking records](https://github.com/bkstar123/mstools/blob/master/app/Tracking.php): `app/Tracking.php`
- [HTTP log conversion](https://github.com/bkstar123/mstools/blob/master/app/Jobs/ConvertHttpLogJsonToCSV.php): `app/Jobs/ConvertHttpLogJsonToCSV.php`

### Async results

- [Notifications](https://github.com/bkstar123/mstools/tree/master/app/Notifications): `app/Notifications`
- [Completion events](https://github.com/bkstar123/mstools/tree/master/app/Events): `app/Events`

### Other components

- **CMS user**
- **Cloudflare services**
- **Pingdom API**
- **Pusher broadcast**
- **Slack alerts**

## Connections

- CMS user → Web routes: submits requests
- Web routes → SSL tools: routes to
- Web routes → Pingdom tools: routes to
- Web routes → Cloudflare tools: routes to
- Web routes → DNS tools: routes to
- Web routes → Firewall rules: routes to
- Web routes → Go-live tracking: routes to
- SSL tools → Certificate checks: validates with
- SSL tools → Domain SSL verification: dispatches
- SSL tools → Zone SSL verification: dispatches
- SSL tools → Certificate upload: dispatches
- Zone SSL verification → Cloudflare services: checks zones
- Certificate upload → Cloudflare services: uploads certificate
- Pingdom tools → Check export: dispatches
- Pingdom tools → Check details: dispatches
- Pingdom tools → Uptime summaries: dispatches
- Pingdom tools → Availability tests: dispatches
- Pingdom tools → Pingdom API: queries API
- Go-live tracking → Tracking records: reads and writes
- Check export → Pingdom API: exports checks
- Check details → Pingdom API: gets details
- Uptime summaries → Pingdom API: gets summaries
- Availability tests → Pingdom API: tests hosts
- HTTP log conversion → Notifications: reports completion
- Completion events → Notifications: triggers
- Notifications → Pusher broadcast: broadcasts updates
- Notifications → Slack alerts: sends alerts
