# aishwaryakonduri04/smart-student-performance-analyzer- architecture

> Architecture diagram of the GitHub repository aishwaryakonduri04/smart-student-performance-analyzer-, 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/aishwaryakonduri04/smart-student-performance-analyzer-
- Repository: https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-

## Overview

Smart Student Performance Analyzer is a command-line app that collects one student’s details and subject marks, validates input, and stores them in memory. Its main workflow routes menu choices to student creation, detail display, or report generation. The report uses a separate analyzer for totals, grades, status, subject extremes, and insights. The graph reflects the README and sampled source; it does not imply persistent storage or unsampled capabilities.

Main entry points: [`main.py`](https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-/blob/main/main.py) (Menu Workflow), [`report.py`](https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-/blob/main/report.py) (Report Generator), [`student.py`](https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-/blob/main/student.py) (Student Data), [`utils.py`](https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-/blob/main/utils.py) (Input Validation)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_cli["Command Line"]
  node_application["Menu Workflow<br/>[main.py]"]
  node_input["Input Validation<br/>[utils.py]"]
end

subgraph group_records["Student Records"]
  node_student["Student Data<br/>[student.py]"]
end

subgraph group_reporting["Performance Reporting"]
  node_report["Report Generator<br/>[report.py]"]
  node_analysis["Performance Analysis<br/>[performance.py]"]
end

node_user(("User"))

node_user -->|"chooses actions"| node_application
node_application -->|"requests validated input"| node_input
node_application -->|"creates and displays"| node_student
node_application -->|"requests report"| node_report
node_report -->|"reads student data"| node_student
node_report -->|"calculates results"| node_analysis
node_report -->|"prints report"| node_user

click node_application "https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-/blob/main/main.py"
click node_input "https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-/blob/main/utils.py"
click node_student "https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-/blob/main/student.py"
click node_report "https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-/blob/main/report.py"
click node_analysis "https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-/blob/main/performance.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_application,node_input,node_user toneBlue
class node_student toneAmber
class node_report,node_analysis toneMint
```

## Components

### Command Line

- [Menu Workflow](https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-/blob/main/main.py): `main.py`
- [Input Validation](https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-/blob/main/utils.py): `utils.py`

### Student Records

- [Student Data](https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-/blob/main/student.py): `student.py`

### Performance Reporting

- [Report Generator](https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-/blob/main/report.py): `report.py`
- [Performance Analysis](https://github.com/aishwaryakonduri04/smart-student-performance-analyzer-/blob/main/performance.py): `performance.py`

### Other components

- **User**

## Connections

- User → Menu Workflow: chooses actions (evidence: `README.md`)
- Menu Workflow → Input Validation: requests validated input (evidence: `main.py`)
- Menu Workflow → Student Data: creates and displays (evidence: `main.py`)
- Menu Workflow → Report Generator: requests report (evidence: `main.py`)
- Report Generator → Student Data: reads student data (evidence: `report.py`)
- Report Generator → Performance Analysis: calculates results (evidence: `report.py`)
- Report Generator → User: prints report (evidence: `report.py`)
