Skip to main content

A ranking table tennis system

Project description

ranking-table-tennis

Ranking system for table tennis players.

The system keeps a record of championship points and rating points.

Championship points aim at tracking the tournament achievements of players. Their computation is based on the best rounds reached by players in each tournament.

Rating points aim at tracking the relative skill level of players. Their computation is based on the outcomes of one-versus-one matches.

Installation

This system has been developed for a Linux environment.

Using uv (recommended)

uv venv [-p 3.12]
uv sync

Install the package globally (not recommended):

uv pip install ranking-table-tennis

Using pip (single user)

pip install --user ranking-table-tennis

Uninstallation

pip uninstall ranking-table-tennis

Authentication for gspread

To start using the upload spreadsheets capabilities, gspread requires authentication. Please, follow the recommended steps to get your system ready to upload.

Update

Using uv (recommended):

uv sync

Using pip (single user):

pip install --user --upgrade ranking-table-tennis

Usage

The commands must be run in a bash terminal. Use uv run ... if you have installed with uv.

  1. Fill a sheet with the tournament matches. It must be saved in the Tournaments spreadsheet (xlsx).

    Players and Initial Ranking sheets must be in the same spreadsheet (it is used as a database).

  2. Run rtt preprocess.

    The scripts will read the Tournament spreadsheet and will ask for missing information of new players (city, affiliation, initial rating points, and category). This information will be saved in the Players and Initial Ranking sheets.

  3. Run rtt compute.

    It will ask for the tournament that you want to process. 0 will compute all from the beggining. The outcome will be saved in the Ranking spreadsheet.

  4. Run rtt publish.

    It will ask for the index of the tournament that you want to publish. The outcome will be saved in a new spreadsheet.

Development

Install locally from source (editable mode):

uv sync --group test
uv run pytest

Install with pip (editable mode):

pip install --editable ".[test]"
pytest

Update version at pyproject.toml and push it to github. We follow date versions like vYYYY.MM.DD

Once it is merged on master you must tag the commit so a github actions will be triggered to do the rest:

uv build
uv publish

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ranking_table_tennis-2026.5.21.tar.gz (52.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ranking_table_tennis-2026.5.21-py3-none-any.whl (65.5 kB view details)

Uploaded Python 3

File details

Details for the file ranking_table_tennis-2026.5.21.tar.gz.

File metadata

  • Download URL: ranking_table_tennis-2026.5.21.tar.gz
  • Upload date:
  • Size: 52.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.15 {"installer":{"name":"uv","version":"0.11.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ranking_table_tennis-2026.5.21.tar.gz
Algorithm Hash digest
SHA256 7610b0edcee90b9a77cba7bc4a8eebd7b411a9576e0d953b127727f1ee8dea5e
MD5 5ca9b7543079989d8d4d8dce621b433d
BLAKE2b-256 4ce09fa19e37d9e2d6c3e5b0a1df6e46046f0abb62ffd53cd0ece5729f8d0f8c

See more details on using hashes here.

File details

Details for the file ranking_table_tennis-2026.5.21-py3-none-any.whl.

File metadata

  • Download URL: ranking_table_tennis-2026.5.21-py3-none-any.whl
  • Upload date:
  • Size: 65.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.15 {"installer":{"name":"uv","version":"0.11.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ranking_table_tennis-2026.5.21-py3-none-any.whl
Algorithm Hash digest
SHA256 8d45767746194bf6afbf5df7694488b4a7f72826bb08337f02c8d41deb4dbd6f
MD5 4dcf0ee4761196717d18326e697045bc
BLAKE2b-256 9f2d0872f1690d547a0428d856428e73367dc190c691e74502fc079c95656348

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page