# carljohntruya-art/codm_booster architecture

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

- Interactive diagram: https://gitdiagram.com/carljohntruya-art/codm_booster
- Repository: https://github.com/carljohntruya-art/codm_booster

## Overview

CODM Booster is an Android gaming-optimization app. The user configures a profile and optional traffic stabilizer, then starts a boost; the ViewModel coordinates Shizuku permission, system tuning and memory cleanup, optional VPN startup, and game launch. Users can later restore settings, while Thermal Guard provides a bounded automatic restore for thermal protection. The graph preserves the documented VPN, RAM-cleaning, auto-launch, thermal, and telemetry capabilities. Some wiring is supported only by the README or source index; unsampled implementation details are not inferred.

Main entry points: [`app/src/main/java/com/turbocodmbooster/MainActivity.kt`](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/MainActivity.kt) (Activity coordinator), [`app/src/main/java/com/turbocodmbooster/BoostViewModel.kt`](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/BoostViewModel.kt) (Boost coordinator), [`app/src/main/java/com/turbocodmbooster/RamCleaner.kt`](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/RamCleaner.kt) (RAM and settings), [`app/src/main/java/com/turbocodmbooster/ui/BoosterScreen.kt`](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/ui/BoosterScreen.kt) (Booster screen)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_app["App experience"]
  node_activity["Activity coordinator<br/>[MainActivity.kt]"]
  node_screen["Booster screen<br/>[BoosterScreen.kt]"]
  node_settings["Boost preferences<br/>[BoosterSettings.kt]"]
  node_telemetry["Device telemetry<br/>[SystemTelemetry.kt]"]
end

subgraph group_boost["Boost operations"]
  node_viewmodel["Boost coordinator<br/>[BoostViewModel.kt]"]
  node_packages["App package lists<br/>[AppPackages.kt]"]
  node_cleaner["RAM and settings<br/>[RamCleaner.kt]"]
  node_thermal["Thermal safety<br/>[ThermalGuard.kt]"]
end

subgraph group_system["System access"]
  node_snapshot[("System snapshot<br/>[SystemSnapshot.kt]")]
  node_shell["Shizuku shell<br/>[ShellExecutor.kt]"]
end

subgraph group_network["Traffic stabilizer"]
  node_vpn["VPN service"]
end

node_user(("Player"))
node_shizuku{{"Shizuku service"}}
node_dns{{"Cloudflare DNS"}}
node_game(("CODM game"))

node_user -->|"configures"| node_screen
node_screen -->|"user actions"| node_activity
node_activity -->|"delegates boost"| node_viewmodel
node_screen -->|"reads stats"| node_telemetry
node_activity -->|"reads display rate"| node_telemetry
node_viewmodel -->|"runs boost"| node_cleaner
node_viewmodel -->|"starts service"| node_vpn
node_viewmodel -.->|"arms safety"| node_thermal
node_viewmodel -->|"selects game"| node_packages
node_activity -->|"launches game"| node_game
node_activity -->|"requests permission"| node_shizuku
node_cleaner -->|"runs commands"| node_shell
node_shell -->|"executes remotely"| node_shizuku
node_cleaner -->|"captures and restores"| node_snapshot
node_thermal -->|"restores protection"| node_cleaner
node_vpn -->|"routes DNS"| node_dns
node_vpn -->|"exempts packages"| node_packages
node_user -->|"requests restore"| node_activity

click node_activity "https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/MainActivity.kt"
click node_screen "https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/ui/BoosterScreen.kt"
click node_settings "https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/BoosterSettings.kt"
click node_telemetry "https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/SystemTelemetry.kt"
click node_viewmodel "https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/BoostViewModel.kt"
click node_packages "https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/AppPackages.kt"
click node_cleaner "https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/RamCleaner.kt"
click node_thermal "https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/ThermalGuard.kt"
click node_snapshot "https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/SystemSnapshot.kt"
click node_shell "https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/ShellExecutor.kt"
click node_vpn "https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/NetworkBlockerVpnService.kt"

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_activity,node_screen,node_settings,node_telemetry toneBlue
class node_viewmodel,node_packages,node_cleaner,node_thermal toneAmber
class node_snapshot,node_shell toneMint
class node_vpn toneRose
class node_user,node_shizuku,node_dns,node_game toneIndigo
```

## Components

### App experience

- [Activity coordinator](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/MainActivity.kt): `app/src/main/java/com/turbocodmbooster/MainActivity.kt`
- [Booster screen](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/ui/BoosterScreen.kt): `app/src/main/java/com/turbocodmbooster/ui/BoosterScreen.kt`
- [Boost preferences](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/BoosterSettings.kt): `app/src/main/java/com/turbocodmbooster/BoosterSettings.kt`
- [Device telemetry](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/SystemTelemetry.kt): `app/src/main/java/com/turbocodmbooster/SystemTelemetry.kt`

### Boost operations

- [Boost coordinator](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/BoostViewModel.kt): `app/src/main/java/com/turbocodmbooster/BoostViewModel.kt`
- [App package lists](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/AppPackages.kt): `app/src/main/java/com/turbocodmbooster/AppPackages.kt`
- [RAM and settings](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/RamCleaner.kt): `app/src/main/java/com/turbocodmbooster/RamCleaner.kt`
- [Thermal safety](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/ThermalGuard.kt): `app/src/main/java/com/turbocodmbooster/ThermalGuard.kt`

### System access

- [System snapshot](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/SystemSnapshot.kt): `app/src/main/java/com/turbocodmbooster/SystemSnapshot.kt`
- [Shizuku shell](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/ShellExecutor.kt): `app/src/main/java/com/turbocodmbooster/ShellExecutor.kt`

### Traffic stabilizer

- [VPN service](https://github.com/carljohntruya-art/codm_booster/blob/main/app/src/main/java/com/turbocodmbooster/NetworkBlockerVpnService.kt): `app/src/main/java/com/turbocodmbooster/NetworkBlockerVpnService.kt`

### Other components

- **Player**
- **Shizuku service**
- **Cloudflare DNS**
- **CODM game**

## Connections

- Player → Booster screen: configures (evidence: `README.md`)
- Booster screen → Activity coordinator: user actions (evidence: `app/src/main/java/com/turbocodmbooster/MainActivity.kt`)
- Activity coordinator → Boost coordinator: delegates boost (evidence: `app/src/main/java/com/turbocodmbooster/MainActivity.kt`)
- Booster screen → Device telemetry: reads stats (evidence: `app/src/main/java/com/turbocodmbooster/ui/BoosterScreen.kt`)
- Activity coordinator → Device telemetry: reads display rate (evidence: `app/src/main/java/com/turbocodmbooster/MainActivity.kt`)
- Boost coordinator → RAM and settings: runs boost (evidence: `app/src/main/java/com/turbocodmbooster/BoostViewModel.kt`)
- Boost coordinator → VPN service: starts service (evidence: `app/src/main/java/com/turbocodmbooster/BoostViewModel.kt`)
- Boost coordinator → Thermal safety: arms safety (evidence: `app/src/main/java/com/turbocodmbooster/BoostViewModel.kt`)
- Boost coordinator → App package lists: selects game (evidence: `app/src/main/java/com/turbocodmbooster/BoostViewModel.kt`)
- Activity coordinator → CODM game: launches game (evidence: `app/src/main/java/com/turbocodmbooster/MainActivity.kt`)
- Activity coordinator → Shizuku service: requests permission (evidence: `app/src/main/java/com/turbocodmbooster/MainActivity.kt`)
- RAM and settings → Shizuku shell: runs commands (evidence: `app/src/main/java/com/turbocodmbooster/RamCleaner.kt`)
- Shizuku shell → Shizuku service: executes remotely (evidence: `app/src/main/java/com/turbocodmbooster/ShellExecutor.kt`)
- RAM and settings → System snapshot: captures and restores (evidence: `app/src/main/java/com/turbocodmbooster/RamCleaner.kt`)
- Thermal safety → RAM and settings: restores protection (evidence: `app/src/main/java/com/turbocodmbooster/ThermalGuard.kt`)
- VPN service → Cloudflare DNS: routes DNS (evidence: `app/src/main/java/com/turbocodmbooster/NetworkBlockerVpnService.kt`)
- VPN service → App package lists: exempts packages (evidence: `app/src/main/java/com/turbocodmbooster/NetworkBlockerVpnService.kt`)
- Player → Activity coordinator: requests restore (evidence: `README.md`)
