# gopalakrishna57/python-developer-internship-tasks architecture

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

- Interactive diagram: https://gitdiagram.com/gopalakrishna57/python-developer-internship-tasks
- Repository: https://github.com/gopalakrishna57/python-developer-internship-tasks

## Overview

This repository contains three independent command-line scripts, not one integrated application: a folder organizer, a live cryptocurrency price display, and a sales CSV analyzer. Each is initiated by a user and reports results in the terminal. The sales script reads `sales.csv` and writes a category summary; the tree instead lists `sales.cv.txt`, so that input-file mismatch is unresolved. The graph follows the sampled script behavior; no README documentation was provided.

Main entry points: [`task2.py`](https://github.com/gopalakrishna57/python-developer-internship-tasks/blob/main/task2.py) (Price Fetcher), [`task1.py`](https://github.com/gopalakrishna57/python-developer-internship-tasks/blob/main/task1.py) (Folder Organizer), [`task3.py`](https://github.com/gopalakrishna57/python-developer-internship-tasks/blob/main/task3.py) (Sales Analyzer)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_organizer["File Organizer"]
  node_folder_tool["Folder Organizer<br/>[task1.py]"]
end

subgraph group_prices["Price Lookup"]
  node_price_tool["Price Fetcher<br/>[task2.py]"]
end

subgraph group_sales["Sales Analysis"]
  node_sales_tool["Sales Analyzer<br/>[task3.py]"]
end

node_user(("User"))
node_terminal["Terminal"]
node_filesystem[("Local Filesystem")]
node_coingecko["CoinGecko API"]

node_user -->|"starts and supplies path"| node_folder_tool
node_folder_tool -->|"lists, creates, moves"| node_filesystem
node_folder_tool -->|"prints status"| node_terminal
node_user -->|"starts"| node_price_tool
node_price_tool -->|"requests market data"| node_coingecko
node_coingecko -->|"returns prices"| node_price_tool
node_price_tool -->|"prints prices or errors"| node_terminal
node_user -->|"starts"| node_sales_tool
node_sales_tool -->|"reads sales.csv; writes summary_report.csv"| node_filesystem
node_sales_tool -->|"prints totals and summary"| node_terminal

click node_folder_tool "https://github.com/gopalakrishna57/python-developer-internship-tasks/blob/main/task1.py"
click node_price_tool "https://github.com/gopalakrishna57/python-developer-internship-tasks/blob/main/task2.py"
click node_sales_tool "https://github.com/gopalakrishna57/python-developer-internship-tasks/blob/main/task3.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_folder_tool,node_user toneBlue
class node_price_tool,node_filesystem toneAmber
class node_sales_tool,node_coingecko toneMint
class node_terminal toneIndigo
```

## Components

### File Organizer

- [Folder Organizer](https://github.com/gopalakrishna57/python-developer-internship-tasks/blob/main/task1.py): `task1.py`

### Price Lookup

- [Price Fetcher](https://github.com/gopalakrishna57/python-developer-internship-tasks/blob/main/task2.py): `task2.py`

### Sales Analysis

- [Sales Analyzer](https://github.com/gopalakrishna57/python-developer-internship-tasks/blob/main/task3.py): `task3.py`

### Other components

- **User**
- **Terminal**
- **Local Filesystem**
- **CoinGecko API**

## Connections

- User → Folder Organizer: starts and supplies path
- Folder Organizer → Local Filesystem: lists, creates, moves
- Folder Organizer → Terminal: prints status
- User → Price Fetcher: starts
- Price Fetcher → CoinGecko API: requests market data
- CoinGecko API → Price Fetcher: returns prices
- Price Fetcher → Terminal: prints prices or errors
- User → Sales Analyzer: starts
- Sales Analyzer → Local Filesystem: reads sales.csv; writes summary_report.csv
- Sales Analyzer → Terminal: prints totals and summary
