Chess

Chess on GitHub

By Rank Timber editorial team Current release, published September 22, 2025

Close detail of the file-rank intersection with a paper hole on the selected square.
File-rank detail for the chess mark used across this install guide. Rank Timber original file-rank geometry for factory-chess (not a PyChess logo).

This chess client is open-source under GPL-3.0; the GTK Python code lives on GitHub. Releases publish the Windows MSI, Linux .deb, Fedora rpm, and source tarball.

Repository: pychess/pychess. Homepage: pychess.github.io. Features: about.

Licence

Clients ship under GPL-3.0. You can read, build, and redistribute under those terms. Trademark and logos stay with upstream.

Stars and activity

Stars are a popularity signal, not a safety certificate. Prefer named Releases assets and your own review. The live fetch on the home panel reports the current star count.

What the repo contains

The client sources, translations, engines glue, and packaging live in the repository. Everyday installers still come from Releases, not from cloning for a casual chess install.

Security reports

Security disclosures follow upstream guidance at the security page. Ordinary bugs go to GitHub Issues. This install guide does not run a bounty.

Related doors

Releases filenames: releases. Safe download: download safe. Safety essay: is it safe.

Build notes

README asks for Python 3.10 or newer plus GTK/GObject packages. Those steps are UNVERIFIED here. Casual desks should still take the MSI or .deb.

Keep one installer door forever. Mixing adware wrappers with GitHub Releases on the same PC creates duplicate installs and confused uninstalls. After every reimage, prove one short local game before you call the machine ready.

Rank Timber maps filenames for people who searched for a local chess client and need a GTK PyChess path. Upstream remains at pychess.github.io and pychess/pychess under GPL-3.0. Website billing stays your responsibility and stays separate from the program licence.

When Releases add or drop OS assets on a tag, re-check the live list before you image a classroom. Prefer the Windows mingw MSI when that is the door. Prefer the Linux .deb when you want the same tag. Refuse review portals that only rank with a renamed setup.

  • Match pychess-*-mingw_x86_64_msvcrt_gnu.msi on Windows when Releases is the door.
  • Use python3-pychess_*.deb on Debian or Ubuntu when the .deb is allowed.
  • Use the Fedora noarch rpm from the same honest tag when that is the policy.
  • Keep website boards as a brief fallback while you prove the local game.
  • Return to the same door for updates instead of inventing a mirror.

Family PCs, student laptops, and shared desks all benefit from the same rhythm: one installer door, one PGN folder, one documented engine. That is how the habit stays boring in a good way.

When someone pastes a random download link into chat, ask for the GitHub Releases URL instead. The install path on this guide always returns to pychess/pychess.

Club nights go faster when the laptop already has PyChess from the named MSI or .deb. Travel bags go quieter when the same filename is written on a tape label. Lab techs waste less time when SmartScreen prompts point at a URL they typed, not at a renamed portal.

If a teammate insists on a website for rated games, leave that bookmark in the browser and still keep the desktop client for analysis. The two jobs are different. This guide maps the desktop job.

Ticket lines that survive a reimage

Write the GitHub org, the filename class, and the PGN folder on one line. After a reimage, a substitute can restore the GTK window without hunting a portal. That boring line is the whole operations habit.

  • Org: pychess/pychess
  • Windows: pychess-*-mingw_x86_64_msvcrt_gnu.msi
  • Linux: python3-pychess_*.deb or the py312 noarch rpm
  • PGN folder on a disk you back up

Club nights go faster when the laptop already has that line. Travel bags go quieter when the same MSI name is on tape. Labs waste less time when SmartScreen points at a URL someone typed.

If a teammate pastes a random setup into chat, ask for the GitHub Releases URL instead. Named assets beat ranking pages.

Keep website boards as a fallback when live ratings are the job. Keep PyChess as the local analysis window. The two jobs stay separate on the ticket so a third unofficial GUI does not appear from a search ad.

Rank Timber maps filenames. Upstream remains GPL-3.0 at pychess.github.io. When Releases change asset names, re-check the live tag before you image a classroom. Related: guides and first hour.