Metadata-Version: 2.4
Name: TermFace
Version: 1.0.0
Summary: ASCII video call over terminal — webcam to color ASCII art with encrypted peer-to-peer calls
Author: TermFace
License: MIT
Project-URL: Homepage, https://github.com/Yash12b/termface
Project-URL: Repository, https://github.com/Yash12b/termface
Project-URL: Issues, https://github.com/Yash12b/termface/issues
Keywords: ascii,webcam,terminal,videocall,facetime,color,art
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Multimedia :: Video
Classifier: Topic :: Communications
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: opencv-python>=4.8
Requires-Dist: numpy>=1.24
Requires-Dist: PyAudio>=0.2.14
Requires-Dist: cryptography>=41.0
Requires-Dist: mss>=9.0
Provides-Extra: dev
Requires-Dist: cython>=3.0; extra == "dev"
Requires-Dist: build; extra == "dev"
Requires-Dist: twine; extra == "dev"
Dynamic: license-file

# TermFace

**ASCII video call over terminal.** Your webcam rendered as color ASCII art, with encrypted peer-to-peer calls.

## Features

- **Color ASCII webcam** — real-time webcam rendered as colored ASCII art in your terminal
- **Peer-to-peer calls** — call friends directly, no server needed
- **AES-256 encryption** — all video/audio traffic is encrypted
- **Background effects** — blur or remove your background
- **Edge detection** — wireframe ASCII mode
- **Text chat** — send messages during calls
- **File transfer** — send files to your peer
- **Screen sharing** — share your screen instead of webcam
- **Call recording** — record calls to video files
- **Adaptive quality** — auto-adjusts to network conditions
- **LAN discovery** — finds peers on your local network

## Quick Install

### macOS / Linux

```bash
curl -fsSL https://raw.githubusercontent.com/Yash12b/termface/main/install.sh | bash
```

### Windows (PowerShell)

```powershell
irm https://raw.githubusercontent.com/Yash12b/termface/main/install.ps1 | iex
```

### With pip (if Python is installed)

```bash
pip install TermFace
```

## Usage

### ASCII Webcam (local only)

```bash
ascii-cam
# or
termface ascii
```

### Video Call

```bash
# You (caller)
termface facetime --target FRIEND_IP --encrypt-key mysecret

# Friend (receiver) — wait for incoming call
termface facetime --encrypt-key mysecret
```

### All Options

```bash
termface facetime --help
termface ascii --help
```

## Controls (during call)

| Key | Action |
|-----|--------|
| `t` | Open chat |
| `f` | Send file |
| `1-4` | Switch color mode |
| `e` | Toggle edges |
| `b` | Toggle background blur |
| `r` | Toggle background removal / recording |
| `s` | Screenshot |
| `c` | Cycle character set |
| `+/-` | Brightness |
| `[/]` | Contrast |
| `q` | Quit |

## Building from Source

```bash
# Install build tools
pip install Cython build twine

# Compile source to binaries
python build_cython.py

# Build wheel
python -m build --wheel

# Upload to PyPI
twine upload dist/*
```

## License

MIT
