# jovskieee/filesofjov architecture

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

- Interactive diagram: https://gitdiagram.com/jovskieee/filesofjov
- Repository: https://github.com/jovskieee/filesofjov

## Overview

FilesofJov is a small collection of independent Python examples rather than one integrated application. Its main user-facing examples are calculator GUIs, interactive and animated Turtle/Pygame graphics, and a command-line student grade report. The README provides no product overview, so the graph reflects only behavior visible in the sampled scripts; it does not imply connections between them. The remaining simple print scripts are omitted as peripheral examples.

Main entry points: [`calcu.py`](https://github.com/jovskieee/filesofjov/blob/main/calcu.py) (iPhone Calculator), [`IPCal.py`](https://github.com/jovskieee/filesofjov/blob/main/IPCal.py) (Calculator), [`imycalcu.py`](https://github.com/jovskieee/filesofjov/blob/main/imycalcu.py) (Secret Calculator), [`snakegame.py`](https://github.com/jovskieee/filesofjov/blob/main/snakegame.py) (Snake Game)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_calculators["Calculator Apps"]
  node_iphone_calc["iPhone Calculator<br/>[calcu.py]"]
  node_calculator["Calculator<br/>[IPCal.py]"]
  node_secret_calc["Secret Calculator<br/>[imycalcu.py]"]
end

subgraph group_games["Interactive Games"]
  node_snake["Snake Game<br/>[snakegame.py]"]
  node_plasma["Plasma Ring<br/>[game.py]"]
end

subgraph group_graphics["Drawing Examples"]
  node_chessboard["Chessboard Drawing<br/>[chessdesk.py]"]
  node_heart["Heart Drawing<br/>[harthart.py]"]
  node_rainbow["Rainbow Circles<br/>[laro.py]"]
  node_turtle_demo["Turtle Movement<br/>[tryturtle.py]"]
end

subgraph group_cli["Command-Line Example"]
  node_grade_report["Student Grade Report<br/>[act.py]"]
end

node_user(("User"))

node_user -->|"uses"| node_iphone_calc
node_user -->|"uses"| node_calculator
node_user -->|"uses"| node_secret_calc
node_user -->|"controls"| node_snake
node_user -->|"closes"| node_plasma
node_user -->|"views"| node_chessboard
node_user -->|"views"| node_heart
node_user -->|"views"| node_rainbow
node_user -->|"views"| node_turtle_demo
node_user -->|"provides input"| node_grade_report

click node_iphone_calc "https://github.com/jovskieee/filesofjov/blob/main/calcu.py"
click node_calculator "https://github.com/jovskieee/filesofjov/blob/main/IPCal.py"
click node_secret_calc "https://github.com/jovskieee/filesofjov/blob/main/imycalcu.py"
click node_snake "https://github.com/jovskieee/filesofjov/blob/main/snakegame.py"
click node_plasma "https://github.com/jovskieee/filesofjov/blob/main/game.py"
click node_chessboard "https://github.com/jovskieee/filesofjov/blob/main/chessdesk.py"
click node_heart "https://github.com/jovskieee/filesofjov/blob/main/harthart.py"
click node_rainbow "https://github.com/jovskieee/filesofjov/blob/main/laro.py"
click node_turtle_demo "https://github.com/jovskieee/filesofjov/blob/main/tryturtle.py"
click node_grade_report "https://github.com/jovskieee/filesofjov/blob/main/act.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_iphone_calc,node_calculator,node_secret_calc,node_user toneBlue
class node_snake,node_plasma toneAmber
class node_chessboard,node_heart,node_rainbow,node_turtle_demo toneMint
class node_grade_report toneRose
```

## Components

### Calculator Apps

- [iPhone Calculator](https://github.com/jovskieee/filesofjov/blob/main/calcu.py): `calcu.py`
- [Calculator](https://github.com/jovskieee/filesofjov/blob/main/IPCal.py): `IPCal.py`
- [Secret Calculator](https://github.com/jovskieee/filesofjov/blob/main/imycalcu.py): `imycalcu.py`

### Interactive Games

- [Snake Game](https://github.com/jovskieee/filesofjov/blob/main/snakegame.py): `snakegame.py`
- [Plasma Ring](https://github.com/jovskieee/filesofjov/blob/main/game.py): `game.py`

### Drawing Examples

- [Chessboard Drawing](https://github.com/jovskieee/filesofjov/blob/main/chessdesk.py): `chessdesk.py`
- [Heart Drawing](https://github.com/jovskieee/filesofjov/blob/main/harthart.py): `harthart.py`
- [Rainbow Circles](https://github.com/jovskieee/filesofjov/blob/main/laro.py): `laro.py`
- [Turtle Movement](https://github.com/jovskieee/filesofjov/blob/main/tryturtle.py): `tryturtle.py`

### Command-Line Example

- [Student Grade Report](https://github.com/jovskieee/filesofjov/blob/main/act.py): `act.py`

### Other components

- **User**

## Connections

- User → iPhone Calculator: uses (evidence: `calcu.py`)
- User → Calculator: uses (evidence: `IPCal.py`)
- User → Secret Calculator: uses (evidence: `imycalcu.py`)
- User → Snake Game: controls (evidence: `snakegame.py`)
- User → Plasma Ring: closes (evidence: `game.py`)
- User → Chessboard Drawing: views (evidence: `chessdesk.py`)
- User → Heart Drawing: views (evidence: `harthart.py`)
- User → Rainbow Circles: views (evidence: `laro.py`)
- User → Turtle Movement: views (evidence: `tryturtle.py`)
- User → Student Grade Report: provides input (evidence: `act.py`)
