Metadata-Version: 2.4
Name: kesav-chess-cli
Version: 1.0.3
Summary: A command-line chess game
Author-email: sai kesav <saikesav67254@gmail.com>
License: GNU GENERAL PUBLIC LICENSE
        Version 3, 29 June 2007
        
        Copyright (C) 2026 Sai Kesav
        
        This program is free software: you can redistribute it and/or modify
        it under the terms of the GNU General Public License as published by
        the Free Software Foundation, either version 3 of the License, or
        (at your option) any later version.
        
        This program is distributed in the hope that it will be useful,
        but WITHOUT ANY WARRANTY; without even the implied warranty of
        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
        GNU General Public License for more details.
        
        You should have received a copy of the GNU General Public License
        along with this program.  If not, see <https://www.gnu.org/licenses/>.
Project-URL: Homepage, https://github.com/saikesav-sai/chess_cli
Keywords: chess,game,chess_cli
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: colorama>=0.4.4
Dynamic: license-file

# Chess CLI

Thanks for opening.

A chess game that you can play in your terminal! I made this project to get experience in building a application in dev-professional way with project structure and industry standard practices and to also understand how to pushlish a python package to the INTERNET. 


## Features

- you can paly chess in your terminal, FYI this is does not contain full piece movements and rules, but most of them are implemented

## Installation

### From PyPI (Recommended)

```bash
I will update the Command once the package is published to PyPI
```

### From Source

```bash
git clone https://github.com/saikesav-sai/chess_cli.git
cd chess_cli
pip install -e .
```

## Requirements

- Python 3.9 or higher
- colorama (automatically installed with the package)

## Usage

After installation, simply run:

```bash
chess_cli
```

### How to Play

1. The game starts with the standard chess board setup
2. Players alternate turns (Yellow starts first)
3. Enter moves in the format: `source destination` (e.g., `e2 e4`)
4. Press `q` to quit the game at any time

### Input Format

Moves are entered using chess notation:
- Columns: `a` through `h` (left to right)
- Rows: `1` through `8` (bottom to top)


## Project Structure

```
Chess_cli/
├── src/
│   └── reader/
│       ├── play_chess.py          # Main game entry point
│       ├── Board/
│       │   └── build.py           # Board initialization
│       └── Game_Engine/
│           ├── runner.py          # Game loop and logic
│           ├── static_variables.py
│           ├── Error_handler/     # Error handling modules
│           ├── Game_Rules/        # Chess rules validation
│           └── Game_utils/        # Utility functions
├── tests/                         # Unit tests
├── pyproject.toml                 # Project configuration
└── README.md
```

### Running Tests

```bash
python -m pytest tests/
```
## License

This project is licensed under The GNU GENERAL PUBLIC LICENSE.

## Author

**Sai Kesav**
- Email: saikessav67254@gmail.com
- GitHub: [@saikesav-sai](https://github.com/saikesav-sai)
- portfolioi: [saikesav.tech](https://saikesav.tech/)


Made with ❤️ by ME
