# ramaromadhon123/it-cert-automation-practice architecture

> Architecture diagram of the GitHub repository ramaromadhon123/it-cert-automation-practice, 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/ramaromadhon123/it-cert-automation-practice
- Repository: https://github.com/ramaromadhon123/it-cert-automation-practice

## Overview

This repository is a collection of independent practice files, not one integrated application. The sampled files show a username-validation function, a small HTTP server, and an employee-date CSV; the README describes course-separated practice files but does not explain the CSV’s intended use. The server handles GET requests with a greeting and host information. Other course contents are not represented as runtime components because their behavior is not shown.

Main entry points: [`Course5/Lab3/hello_cloud.py`](https://github.com/ramaromadhon123/it-cert-automation-practice/blob/master/Course5/Lab3/hello_cloud.py) (GET handler), [`Course3/Lab4/validations.py`](https://github.com/ramaromadhon123/it-cert-automation-practice/blob/master/Course3/Lab4/validations.py) (Username validation)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_course3["Course 3"]
  node_validation["Username validation<br/>[validations.py]"]
end

subgraph group_course4["Course 4"]
  node_employee_csv["Employee dates CSV"]
end

subgraph group_course5["Course 5"]
  node_server_main["Server startup<br/>[hello_cloud.py]"]
  node_tcp_server["TCP HTTP server<br/>[hello_cloud.py]"]
  node_request_handler["GET handler<br/>[hello_cloud.py]"]
  node_host_lookup["Host lookup<br/>[hello_cloud.py]"]
end

node_caller(("Validation caller"))
node_http_client(("HTTP client"))

node_caller -->|"calls"| node_validation
node_server_main -->|"starts"| node_tcp_server
node_http_client -->|"sends request"| node_tcp_server
node_tcp_server -->|"dispatches GET"| node_request_handler
node_request_handler -->|"gets host info"| node_host_lookup
node_request_handler -->|"sends response"| node_http_client

click node_validation "https://github.com/ramaromadhon123/it-cert-automation-practice/blob/master/Course3/Lab4/validations.py"
click node_employee_csv "https://github.com/ramaromadhon123/it-cert-automation-practice/blob/master/Course4/Lab4/employees-with-date.csv"
click node_server_main "https://github.com/ramaromadhon123/it-cert-automation-practice/blob/master/Course5/Lab3/hello_cloud.py"
click node_tcp_server "https://github.com/ramaromadhon123/it-cert-automation-practice/blob/master/Course5/Lab3/hello_cloud.py"
click node_request_handler "https://github.com/ramaromadhon123/it-cert-automation-practice/blob/master/Course5/Lab3/hello_cloud.py"
click node_host_lookup "https://github.com/ramaromadhon123/it-cert-automation-practice/blob/master/Course5/Lab3/hello_cloud.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_validation,node_http_client toneBlue
class node_employee_csv toneAmber
class node_server_main,node_tcp_server,node_request_handler,node_host_lookup toneMint
class node_caller toneIndigo
```

## Components

### Course 3

- [Username validation](https://github.com/ramaromadhon123/it-cert-automation-practice/blob/master/Course3/Lab4/validations.py): `Course3/Lab4/validations.py`

### Course 4

- [Employee dates CSV](https://github.com/ramaromadhon123/it-cert-automation-practice/blob/master/Course4/Lab4/employees-with-date.csv): `Course4/Lab4/employees-with-date.csv`

### Course 5

- [Server startup](https://github.com/ramaromadhon123/it-cert-automation-practice/blob/master/Course5/Lab3/hello_cloud.py): `Course5/Lab3/hello_cloud.py`
- [TCP HTTP server](https://github.com/ramaromadhon123/it-cert-automation-practice/blob/master/Course5/Lab3/hello_cloud.py): `Course5/Lab3/hello_cloud.py`
- [GET handler](https://github.com/ramaromadhon123/it-cert-automation-practice/blob/master/Course5/Lab3/hello_cloud.py): `Course5/Lab3/hello_cloud.py`
- [Host lookup](https://github.com/ramaromadhon123/it-cert-automation-practice/blob/master/Course5/Lab3/hello_cloud.py): `Course5/Lab3/hello_cloud.py`

### Other components

- **Validation caller**
- **HTTP client**

## Connections

- Validation caller → Username validation: calls
- Server startup → TCP HTTP server: starts
- HTTP client → TCP HTTP server: sends request
- TCP HTTP server → GET handler: dispatches GET
- GET handler → Host lookup: gets host info
- GET handler → HTTP client: sends response
