# xandraee/simple-win-rate-calculator architecture

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

- Interactive diagram: https://gitdiagram.com/xandraee/simple-win-rate-calculator
- Repository: https://github.com/xandraee/simple-win-rate-calculator

## Overview

This is a small Java Swing desktop calculator for Mobile Legends win-rate goals. The user enters current match count, current win rate, and target win rate; the dashboard estimates current wins and losses, required additional wins/matches, and progress. Main launches the dashboard, which handles the calculation and displays results. The dashboard excerpt is partial, so details of input validation and all calculation branches are not inferred.

Main entry points: [`Winrate Calculator/src/panels/Dashboard.java`](https://github.com/xandraee/simple-win-rate-calculator/blob/main/Winrate%20Calculator/src/panels/Dashboard.java) (Calculator dashboard), [`Winrate Calculator/src/main/Main.java`](https://github.com/xandraee/simple-win-rate-calculator/blob/main/Winrate%20Calculator/src/main/Main.java) (App launcher)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_startup["Application startup"]
  node_main["App launcher<br/>[Main.java]"]
end

subgraph group_calculator["Win-rate calculator"]
  node_dashboard["Calculator dashboard<br/>[Dashboard.java]"]
  node_inputs["Match and rate inputs<br/>[Dashboard.java]"]
  node_calculation["Goal calculation<br/>[Dashboard.java]"]
  node_results["Stats and progress<br/>[Dashboard.java]"]
end

node_user(("Player"))

node_user -->|"uses"| node_dashboard
node_main -->|"launches"| node_dashboard
node_dashboard -->|"displays"| node_inputs
node_inputs -->|"supplies values"| node_calculation
node_calculation -->|"updates"| node_results
node_results -.->|"shows results"| node_user

click node_main "https://github.com/xandraee/simple-win-rate-calculator/blob/main/Winrate%20Calculator/src/main/Main.java"
click node_dashboard "https://github.com/xandraee/simple-win-rate-calculator/blob/main/Winrate%20Calculator/src/panels/Dashboard.java"
click node_inputs "https://github.com/xandraee/simple-win-rate-calculator/blob/main/Winrate%20Calculator/src/panels/Dashboard.java"
click node_calculation "https://github.com/xandraee/simple-win-rate-calculator/blob/main/Winrate%20Calculator/src/panels/Dashboard.java"
click node_results "https://github.com/xandraee/simple-win-rate-calculator/blob/main/Winrate%20Calculator/src/panels/Dashboard.java"

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_main toneBlue
class node_dashboard,node_inputs,node_calculation,node_results toneAmber
class node_user toneIndigo
```

## Components

### Application startup

- [App launcher](https://github.com/xandraee/simple-win-rate-calculator/blob/main/Winrate%20Calculator/src/main/Main.java): `Winrate Calculator/src/main/Main.java`

### Win-rate calculator

- [Calculator dashboard](https://github.com/xandraee/simple-win-rate-calculator/blob/main/Winrate%20Calculator/src/panels/Dashboard.java): `Winrate Calculator/src/panels/Dashboard.java`
- [Match and rate inputs](https://github.com/xandraee/simple-win-rate-calculator/blob/main/Winrate%20Calculator/src/panels/Dashboard.java): `Winrate Calculator/src/panels/Dashboard.java`
- [Goal calculation](https://github.com/xandraee/simple-win-rate-calculator/blob/main/Winrate%20Calculator/src/panels/Dashboard.java): `Winrate Calculator/src/panels/Dashboard.java`
- [Stats and progress](https://github.com/xandraee/simple-win-rate-calculator/blob/main/Winrate%20Calculator/src/panels/Dashboard.java): `Winrate Calculator/src/panels/Dashboard.java`

### Other components

- **Player**

## Connections

- Player → Calculator dashboard: uses (evidence: `README.md`)
- App launcher → Calculator dashboard: launches (evidence: `Winrate Calculator/src/main/Main.java`)
- Calculator dashboard → Match and rate inputs: displays (evidence: `Winrate Calculator/src/panels/Dashboard.java`)
- Match and rate inputs → Goal calculation: supplies values (evidence: `Winrate Calculator/src/panels/Dashboard.java`)
- Goal calculation → Stats and progress: updates (evidence: `Winrate Calculator/src/panels/Dashboard.java`)
- Stats and progress → Player: shows results
