# drduh/macos-security-and-privacy-guide architecture

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

- Interactive diagram: https://gitdiagram.com/drduh/macos-security-and-privacy-guide
- Repository: https://github.com/drduh/macos-security-and-privacy-guide

## Overview

This repository is a practical macOS security and privacy guide for Apple-silicon users, not an automated hardening tool. Its main workflow is to assess assets and adversaries, choose mitigations, then consult guidance across system setup, network privacy, applications, data protection, and monitoring. The tree also contains a Homebrew bundle, a packet-filter rules file, and three shell scripts. Their contents were not provided, so their behavior and connections to the guide cannot be established; the graph shows only relationships documented in the README.

Main entry points: [`README.md`](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md) (Threat model)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_planning["Security planning"]
  node_threat["Threat model<br/>[README.md]"]
  node_basics["Security basics<br/>[README.md]"]
end

subgraph group_system["System security"]
  node_hardware["Device setup<br/>[README.md]"]
  node_accounts["Accounts and auth<br/>[README.md]"]
  node_system_controls["System controls<br/>[README.md]"]
  node_pf["Packet filter rules<br/>[pf.rules]"]
  node_brew["Homebrew bundle"]
end

subgraph group_network["Network privacy"]
  node_dns["DNS and proxies<br/>[README.md]"]
  node_browsing["Browser privacy<br/>[README.md]"]
  node_connectivity["Private connectivity<br/>[README.md]"]
end

subgraph group_apps["Apps and identity"]
  node_software["Software safety<br/>[README.md]"]
  node_communications["Secure communications<br/>[README.md]"]
  node_cert_script["Keychain cert script"]
end

subgraph group_data["Data and oversight"]
  node_storage["Encryption and backup<br/>[README.md]"]
  node_metadata["Metadata hygiene<br/>[README.md]"]
  node_monitoring["System monitoring<br/>[README.md]"]
  node_persistent_script["Persistence script<br/>[printPersistent.sh]"]
  node_system_info_script["System info script<br/>[printSystemInfo.sh]"]
end

node_user(("Mac user"))

node_user -->|"assesses risk"| node_threat
node_threat -->|"guides mitigations"| node_basics

click node_threat "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md"
click node_basics "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md"
click node_hardware "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md"
click node_accounts "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md"
click node_system_controls "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md"
click node_pf "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/config/pf.rules"
click node_brew "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/config/Brewfile"
click node_dns "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md"
click node_browsing "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md"
click node_connectivity "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md"
click node_software "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md"
click node_communications "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md"
click node_cert_script "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/scripts/printKeychainCerts.sh"
click node_storage "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md"
click node_metadata "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md"
click node_monitoring "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md"
click node_persistent_script "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/scripts/printPersistent.sh"
click node_system_info_script "https://github.com/drduh/macos-security-and-privacy-guide/blob/main/scripts/printSystemInfo.sh"

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_threat,node_basics,node_user toneBlue
class node_hardware,node_accounts,node_system_controls,node_pf,node_brew toneAmber
class node_dns,node_browsing,node_connectivity toneMint
class node_software,node_communications,node_cert_script toneRose
class node_storage,node_metadata,node_monitoring,node_persistent_script,node_system_info_script toneIndigo
```

## Components

### Security planning

- [Threat model](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md): `README.md`
- [Security basics](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md): `README.md`

### System security

- [Device setup](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md): `README.md`
- [Accounts and auth](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md): `README.md`
- [System controls](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md): `README.md`
- [Packet filter rules](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/config/pf.rules): `config/pf.rules`
- [Homebrew bundle](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/config/Brewfile): `config/Brewfile`

### Network privacy

- [DNS and proxies](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md): `README.md`
- [Browser privacy](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md): `README.md`
- [Private connectivity](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md): `README.md`

### Apps and identity

- [Software safety](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md): `README.md`
- [Secure communications](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md): `README.md`
- [Keychain cert script](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/scripts/printKeychainCerts.sh): `scripts/printKeychainCerts.sh`

### Data and oversight

- [Encryption and backup](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md): `README.md`
- [Metadata hygiene](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md): `README.md`
- [System monitoring](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/README.md): `README.md`
- [Persistence script](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/scripts/printPersistent.sh): `scripts/printPersistent.sh`
- [System info script](https://github.com/drduh/macos-security-and-privacy-guide/blob/main/scripts/printSystemInfo.sh): `scripts/printSystemInfo.sh`

### Other components

- **Mac user**

## Connections

- Mac user → Threat model: assesses risk (evidence: `README.md`)
- Threat model → Security basics: guides mitigations (evidence: `README.md`)
