# goden-hero/-cloudguard-screening-app architecture

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

- Interactive diagram: https://gitdiagram.com/goden-hero/-cloudguard-screening-app
- Repository: https://github.com/goden-hero/-cloudguard-screening-app

## Overview

CloudGuard Scene Screening is a desktop React interface prototype for exploring Sentinel-2 cloud and shadow screening. The intended journey is to select a scene from the analysis screen and inspect its results; sample-scene controls also lead to results or an input-error view. Results, processing, model performance, and methodology are separate review screens. These are illustrative UI states only: the README explicitly says GeoTIFF ingestion, inference, and downloads are not implemented. Components share src/App.tsx, so the graph represents screens rather than separate runtime modules; the README documents navigation, while the sampled entry point shows React mounting the app.

Main entry points: [`src/App.tsx`](https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx) (App shell), [`src/main.tsx`](https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/main.tsx) (React entry)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_shell["Application shell"]
  node_entry["React entry<br/>[main.tsx]"]
  node_shell_view["App shell<br/>[App.tsx]"]
end

subgraph group_screening["Screening views"]
  node_analysis["Scene analysis<br/>[App.tsx]"]
  node_results["Scene results<br/>[App.tsx]"]
  node_processing["Processing view<br/>[App.tsx]"]
  node_input_error["Input error<br/>[App.tsx]"]
end

subgraph group_reference["Model reference"]
  node_performance["Model performance<br/>[App.tsx]"]
  node_methodology["Methodology<br/>[App.tsx]"]
end

node_user(("User"))

node_entry -->|"mounts"| node_shell_view
node_user -.->|"interacts"| node_shell_view
node_shell_view -->|"shows screen"| node_analysis
node_shell_view -->|"shows screen"| node_results
node_shell_view -->|"shows screen"| node_processing
node_shell_view -->|"shows screen"| node_input_error
node_shell_view -->|"shows screen"| node_performance
node_shell_view -->|"shows screen"| node_methodology
node_analysis -->|"sample selection"| node_results
node_analysis -->|"sample selection"| node_input_error

click node_entry "https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/main.tsx"
click node_shell_view "https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx"
click node_analysis "https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx"
click node_results "https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx"
click node_processing "https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx"
click node_input_error "https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx"
click node_performance "https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx"
click node_methodology "https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx"

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_entry,node_shell_view,node_user toneBlue
class node_analysis,node_results,node_processing,node_input_error toneAmber
class node_performance,node_methodology toneMint
```

## Components

### Application shell

- [React entry](https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/main.tsx): `src/main.tsx`
- [App shell](https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx): `src/App.tsx`

### Screening views

- [Scene analysis](https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx): `src/App.tsx`
- [Scene results](https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx): `src/App.tsx`
- [Processing view](https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx): `src/App.tsx`
- [Input error](https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx): `src/App.tsx`

### Model reference

- [Model performance](https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx): `src/App.tsx`
- [Methodology](https://github.com/goden-hero/-cloudguard-screening-app/blob/main/src/App.tsx): `src/App.tsx`

### Other components

- **User**

## Connections

- React entry → App shell: mounts (evidence: `src/main.tsx`)
- User → App shell: interacts
- App shell → Scene analysis: shows screen (evidence: `README.md`)
- App shell → Scene results: shows screen (evidence: `README.md`)
- App shell → Processing view: shows screen (evidence: `README.md`)
- App shell → Input error: shows screen (evidence: `README.md`)
- App shell → Model performance: shows screen (evidence: `README.md`)
- App shell → Methodology: shows screen (evidence: `README.md`)
- Scene analysis → Scene results: sample selection (evidence: `src/App.tsx`)
- Scene analysis → Input error: sample selection (evidence: `src/App.tsx`)
