# cloviachebett/functions architecture

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

- Interactive diagram: https://gitdiagram.com/cloviachebett/functions
- Repository: https://github.com/cloviachebett/functions

## Overview

This is a small command-line student report generator. The user enters a name and three marks; the script calculates an average and grade, assembles a report dictionary, and prints it. All runtime behavior is in the single sampled file; there is no README or separate subsystem evidence.

Main entry points: [`report_generator.py`](https://github.com/cloviachebett/functions/blob/main/report_generator.py) (Report assembly)

## Diagram (Mermaid)

```mermaid
flowchart TD

node_user(("User"))
node_cli["CLI entry"]
node_average["Average"]
node_grade["Grade"]
node_report["Report assembly"]

node_user -->|"enters marks"| node_cli
node_cli -->|"calls"| node_report
node_report -->|"calculates average"| node_average
node_report -->|"gets grade"| node_grade
node_grade -->|"calculates average"| node_average
node_report -->|"returns report"| node_cli
node_cli -->|"prints report"| node_user

click node_cli "https://github.com/cloviachebett/functions/blob/main/report_generator.py"
click node_average "https://github.com/cloviachebett/functions/blob/main/report_generator.py"
click node_grade "https://github.com/cloviachebett/functions/blob/main/report_generator.py"
click node_report "https://github.com/cloviachebett/functions/blob/main/report_generator.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_user toneBlue
class node_cli,node_average,node_grade,node_report toneTeal
```

## Components

### Other components

- **User**
- [CLI entry](https://github.com/cloviachebett/functions/blob/main/report_generator.py): `report_generator.py`
- [Average](https://github.com/cloviachebett/functions/blob/main/report_generator.py): `report_generator.py`
- [Grade](https://github.com/cloviachebett/functions/blob/main/report_generator.py): `report_generator.py`
- [Report assembly](https://github.com/cloviachebett/functions/blob/main/report_generator.py): `report_generator.py`

## Connections

- User → CLI entry: enters marks
- CLI entry → Report assembly: calls
- Report assembly → Average: calculates average
- Report assembly → Grade: gets grade
- Grade → Average: calculates average
- Report assembly → CLI entry: returns report
- CLI entry → User: prints report
