Skip to main content

A quick and easy tournament manager

Project description

no-teg

A library for running tournaments

license issues Build Status codecov PyPI Docs

Overview

'no-teg' (get-on backwards) is a library for running tournaments. In the beginning it will be simple i.e. setting up and advancing through different tournament styles. Eventually if things go smoothly the library will also compute data on the tournaments and players. Being open-source, I hope that people will add tournament styles and different analysis that are dependent on different games.

Install:

pip install no-teg

Usage example: Create and run a basic single elimination tourament.

from no_teg import *

p1 = Player("P1")
p2 = Player("P2")
p3 = Player("P1")
p4 = Player("P2")

MyGame = Game()
MyTourney = Single_Elimination(MyGame)
MyTourney.add_players([p1, p2, p3, p4])
MyTourney.start()
 
MyTourney.print_matchups()
1: P2 (A) vs P1 (H)
2: P4 (A) vs P3 (H)

# arguments are matchup_id, away_score, home_score
MyTourney.input_result(1, 3, 2)
MyTourney.input_result(2, 0, 4)

MyTourney.print_results()
1: P2 (3) vs P1 (2)
2: P4 (0) vs P3 (4)

#P2 and P3 advance to the finals
MyTourney.print_matchups()
1: P2 (A) vs P1 (H)
2: P4 (A) vs P3 (H)
3: P2 (A) vs P3 (H)

#P2 wins the tournament!
MyTourney.input_result(3, 2, 1)
MyTourney.print_results()
1: P2 (3) vs P1 (2)
2: P4 (0) vs P3 (4)
3: P2 (2) vs P3 (1)

Makefile commands:

  • make: list available commands
  • make develop: install and build this library and its dependencies using pip
  • make build: build the library using setuptools
  • make lint: perform static analysis of this library with flake8 and black
  • make format: autoformat this library using black
  • make annotate: run type checking using mypy
  • make test: run automated tests with pytest
  • make coverage: run automated tests with pytest and collect coverage information
  • make dist: package library for distribution

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

no-teg-0.2.1.tar.gz (23.5 kB view details)

Uploaded Source

File details

Details for the file no-teg-0.2.1.tar.gz.

File metadata

  • Download URL: no-teg-0.2.1.tar.gz
  • Upload date:
  • Size: 23.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for no-teg-0.2.1.tar.gz
Algorithm Hash digest
SHA256 de874f0ceb5646a4febfda38e9207921c964e2658f03b5940d47e43e97337283
MD5 03c774baf395ea1043afdaf04774ea7e
BLAKE2b-256 9cbc22b3427cd9d6587b970590f1fd155e63797b83cf37c7ad506dd0e361a383

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