https://github.com/audio-engineer/chess-teacher-stockfish
Stockfish REST API for ChessTeacher project
https://github.com/audio-engineer/chess-teacher-stockfish
chess chess-engine docker python university-project
Last synced: about 1 year ago
JSON representation
Stockfish REST API for ChessTeacher project
- Host: GitHub
- URL: https://github.com/audio-engineer/chess-teacher-stockfish
- Owner: audio-engineer
- Archived: true
- Created: 2024-03-18T20:55:28.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-28T18:09:32.000Z (about 2 years ago)
- Last Synced: 2025-03-11T02:48:22.291Z (over 1 year ago)
- Topics: chess, chess-engine, docker, python, university-project
- Language: Python
- Homepage:
- Size: 77.1 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# ChessTeacher Stockfish
This containerized Python application is a REST API
built using FastAPI that serves [Stockfish](https://stockfishchess.org/) engine responses using
[py-stockfish/stockfish](https://github.com/py-stockfish/stockfish) as a wrapper.
The Stockfish software is licensed under GPL v3.
The full source code for the version of the software used in this project can be found here:
[official-stockfish/Stockfish](https://github.com/official-stockfish/Stockfish/tree/sf_16.1).
To build it, run:
```shell
docker build -t audio-engineer/chess-teacher-stockfish:latest .
```
Or, if you are using PyCharm, run the `Build` run configuration.
## Documentation
API documentation can be found at [localhost:8000/docs](http://localhost:8000/docs) and
[localhost:8000/redoc](http://localhost:8000/redoc).
## Local Development
```shell
docker compose up -d
```
```shell
docker exec -it chess-teacher-stockfish-python-1 /bin/sh
```
```shell
fastapi dev --host 0.0.0.0 src/chess_teacher_stockfish/main.py
```
To run the linters in the `python` service container:
```shell
pylint src/ && flake8 && ruff check
```
To run the testing suite in the `python` service container:
```shell
python -m pytest --cov=src.chess_teacher_stockfish
```
```shell
docker compose down
```