# Zoom Network Checker 📹

**By DASecure**

A TUI app to verify your network is ready for Zoom calls.

## Features

- ✅ **Speed Test** — Download/upload bandwidth
- ✅ **Latency Test** — TCP-based ping (works without ICMP)
- ✅ **Jitter Analysis** — Connection stability
- ✅ **Packet Loss Detection** — Reliability check
- ✅ **Quality Score** — Overall rating (0-100)
- ✅ **Zoom Ready Assessment** — Pass/fail for HD video

## Installation

### Option 1: pip (Recommended)

```bash
pip install zoomcheck
```

Then run:
```bash
zoomcheck
```

### Option 2: pipx (Isolated Environment)

```bash
pipx install zoomcheck
zoomcheck
```

### Option 3: Standalone Executable (No Python Required)

Download from [Releases](https://github.com/dasecure/zoomcheck/releases):

- **macOS:** `zoomcheck-macos` (Intel) or `zoomcheck-macos-arm64` (Apple Silicon)
- **Windows:** `zoomcheck-windows.exe`

```bash
# macOS
chmod +x zoomcheck-macos
./zoomcheck-macos

# Windows
zoomcheck-windows.exe
```

### Option 4: From Source

```bash
git clone https://github.com/dasecure/zoomcheck.git
cd zoomcheck
pip install -e .
zoomcheck
```

## Usage

```bash
# One-time check
zoomcheck

# Continuous monitoring (every 5 minutes)
zoomcheck --watch

# Show help
zoomcheck --help
```

## Zoom Requirements Reference

| Quality | Download | Upload |
|---------|----------|--------|
| 1:1 video | 600 Kbps | 600 Kbps |
| Group video | 1.5 Mbps | 1.5 Mbps |
| HD video | 3 Mbps | 3 Mbps |
| 1080p video | 3.8 Mbps | 3.8 Mbps |

**Additional Requirements:**
- Latency: < 150 ms
- Jitter: < 30 ms
- Packet Loss: < 1%

## Building Standalone Executables

Requires PyInstaller:

```bash
pip install pyinstaller

# Build for current platform
pyinstaller --onefile --name zoomcheck src/zoomcheck/main.py

# Output in dist/ folder
```

For cross-platform builds, see `.github/workflows/build.yml`.

## License

MIT © DASecure
