www.pychess.org
Pychess-variants is a free, open-source chess server designed to play chess variants.
Currently supported games are listed on https://www.pychess.org/variants
For move generation, validation, analysis and engine play it uses:
On client side it is based on chessgroundx fork of chessground
As you know, pychess-variants is a free server and it will remain free forever. However, maintaining and improving the server costs time and money.
If you like our work and find our server useful, please donate through Patreon or directly through paypal !! Your contribution will be greatly appreciated and help me continue to develop this awesome server.
Installation
Prerequisites
- You need MongoDB up and running. Mongo daemon
Project setup
# Sync Python dependencies into the project virtualenv uv sync --extra dev # Optionally activate the virtualenv for interactive work source .venv/bin/activate yarn install # Install node requirements yarn dev # Compile typescript files to javascript yarn md # Compile md files to html
All Python commands below should be run with uv run ... unless you have already activated .venv.
The project now targets Python 3.14+.
TypeScript and JavaScript checks
yarn format yarn check-format yarn lint yarn typecheck yarn test
Start server
uv run server/server.py
Python checks and tests
uv run ruff format . uv run ruff check . uv run pyright env PYTHONPATH=server uv run python -m unittest discover -s tests env PYTHONPATH=server:tests uv run python -m unittest tests.some_test_module uv run python -m playwright install env PYTHONPATH=server uv run python -m pytest tests/test_e2e.py env PYTHONPATH=server uv run python -m pytest tests/test_gui.py
Docker setup
If you want to avoid installing dependencies (mongo, node, python) you can instead run the server locally in docker using compose. To start it, simply run:
docker compose up --build
This recompiles the frontend and starts the server and DB. Once it is up, you can connect to localhost:8080 in your browser.
For more detailed Docker workflows, including contributor checks and the optional ci service, see docker/README.md.
Supported browsers
Pychess-variants should support almost all browsers. Though older browsers (including any version of Internet Explorer) will not work. For your own sake, please upgrade. Security and performance, think about it!
Only Fairy-Stockfish analysis might not work on all browsers.
more like this
cc65-Chess
Portable chess game in C. Commodore 64, Apple 2, Atari, Oric, Commander X16, curses terminal, etc.
