Metadata-Version: 2.5
Name: pawnfetch
Version: 0.1.0
Summary: Fetch and compare chess.com player profiles and stats from the command line
Project-URL: Homepage, https://github.com/thegreekgoat98/pawnfetch
Project-URL: Repository, https://github.com/thegreekgoat98/pawnfetch
Project-URL: Issues, https://github.com/thegreekgoat98/pawnfetch/issues
Author-email: Chinmoy <ranjanchinmoy@gmail.com>
License: MIT
License-File: LICENCE
Keywords: chess,chess-stats,chess.com,cli
Classifier: Environment :: Console
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Games/Entertainment :: Board Games
Requires-Python: >=3.10
Requires-Dist: httpx>=0.28.1
Requires-Dist: rich>=15.0.0
Requires-Dist: typer>=0.27.0
Requires-Dist: typing-extensions>=4.0
Description-Content-Type: text/markdown

# pawnfetch

A command-line tool to fetch and compare chess.com player profiles and stats,
built on chess.com's public [PubAPI](https://www.chess.com/news/view/published-data-api).

## Installation

Install the latest release from PyPI with [pipx](https://pipx.pypa.io/) or
[uv](https://docs.astral.sh/uv/):

```bash
pipx install pawnfetch
# or
uv tool install pawnfetch
```

To install directly from GitHub instead:

```bash
uv tool install git+https://github.com/thegreekgoat98/pawnfetch.git
```

## Usage

### Look up a profile
```bash
pawnfetch profile hikaru
```

### Check ratings and win/loss record
```bash
pawnfetch stats hikaru
```

### Compare two players
```bash
pawnfetch compare hikaru magnuscarlsen
```

The `pftch` command is also available as a shorter alias. For example:

```bash
pftch profile hikaru
```

## Development

This project uses [uv](https://docs.astral.sh/uv/) for dependency management.

```bash
git clone https://github.com/thegreekgoat98/pawnfetch.git
cd pawnfetch
uv sync
uv run pawnfetch profile hikaru
```

Chess.com PubAPI data may be cached for up to 12 hours and may not reflect
recent changes immediately. Avoid parallel requests; Chess.com may rate-limit
them with HTTP 429.

Run tests:
```bash
uv run pytest
```

Lint:
```bash
uv run ruff check .
```

## License

MIT