# 50l3r/telewin architecture

> Architecture diagram of the GitHub repository 50l3r/telewin, 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/50l3r/telewin
- Repository: https://github.com/50l3r/telewin

## Overview

Telewin.js is a browser-console script for repeatedly submitting generated email addresses, checking whether accepted addresses win a pizza, and reporting remaining pizzas. Its main loop is driven by timers; prize checking happens only after the email service reports that an address was saved. The README also documents a proxy list for users dealing with bans. The script is shown in full; the proxy file is listed in the tree but was not sampled, so its contents and runtime connections are unknown.

Main entry points: [`telewin.js`](https://github.com/50l3r/telewin/blob/master/telewin.js) (Telewin runtime), [`proxys.txt`](https://github.com/50l3r/telewin/blob/master/proxys.txt) (Proxy list)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_browser_script["Browser script"]
  node_telewin["Telewin runtime<br/>[telewin.js]"]
  node_email_generation["Email generation<br/>[telewin.js]"]
  node_pizza_polling["Pizza polling<br/>[telewin.js]"]
end

subgraph group_remote_services["Remote services"]
  node_mail_service["Mail check API"]
  node_prize_service["Prize check API"]
  node_pizza_status["Pizza status data"]
end

subgraph group_proxy_support["Proxy support"]
  node_proxy_list["Proxy list<br/>[proxys.txt]"]
end

node_user(("Script user"))
node_console["Browser console"]
node_proxy_extension["Proxy extension"]

node_user -->|"runs in console"| node_telewin
node_telewin -->|"generates address"| node_email_generation
node_telewin -->|"submits address"| node_mail_service
node_mail_service -->|"returns result"| node_telewin
node_telewin -->|"checks saved email"| node_prize_service
node_telewin -->|"starts polling"| node_pizza_polling
node_pizza_polling -->|"fetches status"| node_pizza_status
node_telewin -->|"logs results"| node_console
node_user -->|"selects proxy"| node_proxy_list
node_user -->|"configures proxy"| node_proxy_extension

click node_telewin "https://github.com/50l3r/telewin/blob/master/telewin.js"
click node_email_generation "https://github.com/50l3r/telewin/blob/master/telewin.js"
click node_pizza_polling "https://github.com/50l3r/telewin/blob/master/telewin.js"
click node_proxy_list "https://github.com/50l3r/telewin/blob/master/proxys.txt"

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_telewin,node_email_generation,node_pizza_polling,node_user,node_console toneBlue
class node_mail_service,node_prize_service,node_pizza_status toneAmber
class node_proxy_list toneMint
class node_proxy_extension toneIndigo
```

## Components

### Browser script

- [Telewin runtime](https://github.com/50l3r/telewin/blob/master/telewin.js): `telewin.js`
- [Email generation](https://github.com/50l3r/telewin/blob/master/telewin.js): `telewin.js`
- [Pizza polling](https://github.com/50l3r/telewin/blob/master/telewin.js): `telewin.js`

### Remote services

- **Mail check API**
- **Prize check API**
- **Pizza status data**

### Proxy support

- [Proxy list](https://github.com/50l3r/telewin/blob/master/proxys.txt): `proxys.txt`

### Other components

- **Script user**
- **Browser console**
- **Proxy extension**

## Connections

- Script user → Telewin runtime: runs in console (evidence: `README.md`)
- Telewin runtime → Email generation: generates address (evidence: `telewin.js`)
- Telewin runtime → Mail check API: submits address (evidence: `telewin.js`)
- Mail check API → Telewin runtime: returns result (evidence: `telewin.js`)
- Telewin runtime → Prize check API: checks saved email (evidence: `telewin.js`)
- Telewin runtime → Pizza polling: starts polling (evidence: `telewin.js`)
- Pizza polling → Pizza status data: fetches status (evidence: `telewin.js`)
- Telewin runtime → Browser console: logs results (evidence: `telewin.js`)
- Script user → Proxy list: selects proxy (evidence: `README.md`)
- Script user → Proxy extension: configures proxy (evidence: `README.md`)
