{"id":23535369,"url":"https://github.com/souradeepdutta/tournament-management-system","last_synced_at":"2025-11-01T00:30:31.126Z","repository":{"id":232737965,"uuid":"785069816","full_name":"souradeepdutta/Tournament-Management-System","owner":"souradeepdutta","description":"A Chess Tournament Management System designed to simplify tournament organization, enhance accessibility, and modernize outdated processes. The system incorporates advanced features for player management, tournament tracking, and ELO rating calculations, offering a scalable and efficient solution for chess federations and organizers.","archived":false,"fork":false,"pushed_at":"2024-11-22T14:53:22.000Z","size":823,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-26T01:17:02.955Z","etag":null,"topics":["chess-tournament-management","database-management","python","sql","streamli"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/souradeepdutta.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-11T06:12:27.000Z","updated_at":"2024-11-22T14:56:49.000Z","dependencies_parsed_at":"2024-04-11T07:24:40.507Z","dependency_job_id":"2cda8511-d95b-4f12-bd34-3a8df0d92520","html_url":"https://github.com/souradeepdutta/Tournament-Management-System","commit_stats":null,"previous_names":["souradeepdutta/tournament-management-system"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/souradeepdutta%2FTournament-Management-System","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/souradeepdutta%2FTournament-Management-System/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/souradeepdutta%2FTournament-Management-System/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/souradeepdutta%2FTournament-Management-System/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/souradeepdutta","download_url":"https://codeload.github.com/souradeepdutta/Tournament-Management-System/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239242109,"owners_count":19605954,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chess-tournament-management","database-management","python","sql","streamli"],"created_at":"2024-12-26T01:17:05.006Z","updated_at":"2025-11-01T00:30:31.078Z","avatar_url":"https://github.com/souradeepdutta.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Tournament-Management-System\nAadrito Datta \u0026 Souradeep Dutta\n\n### Requirements\n- Python\n- Streamlit\n- My SQL\nNote: To install streamlit run\n```\npip install streamlit\n```\n\nTo run the project:\n1. Clone the repository\n2. Open terminal in the Directory and run\n```\nstreamlit run ./Homepage.py\u003c/code\u003e\n```\n\n### Tech Stack\n- Python\n- My SQL\n- Streamlit\n\n## Problem Statement\n***A new chess tournament management system that is designed to address these challenges***\n\nCurrent chess tournament systems stifle growth with:\n- Limited data analysis hindering informed decision-making\n- Lack of accessibility and scalability for large-scale events\n- Hard for competitors to query large amounts of data\n- Hard to maintain up-to-date information about player eligibility\n- Chess software is out-of-date\n- Lack of a centralized system to handle ELO updates making the system more error-prone\n\n### Assumptions\n- A player can participate in many tournaments\n- Each tournament has multiple participants\n- Each tournament consists of multiple games\n- Each game is played between 2 players\n- A player can be part of 1 or more federations\n- Each federation has its own independent ELO ratings and titles\n- When a tournament is recognized by a federation, the tournament affects the ELO rating of participating players with that federation\n- A federation awards titles to players\n- A player can have 1 more titles\n- A tournament can be eligible to award a player with a title-norm if it meets certain criteria\n- Each game played follows exactly 1 opening till a certain move\n- Each opening has a unique ECO code\n- A tournament can occur across 1 or more venues and can be recognized by multiple federations\n- A game between 2 players can have 1 result which can be used to calculate the change in a player's score and rating\n- The standings of the tournament can be calculated from the score\n- A federation can ban a player till a certain date\n- Each game has exactly one time control for the game but the time control may differ across the tournament\n- A game can be standalone or part of a tournament. A standalone game cannot affect ratings of any federation as it is not part of a recognized tournament\n- A tournament can be eligible to grant titles for a federation only if it is recognized by the federation. It can be eligible to grant some titles but not others\n- A game occurs within 1 day and does not span multiple days\n- The moves of a game can be represented using Portable Game Notation (PGN) but it is not unique, as different games can have the same moves\n- A player’s federation may not be related to their country\n- A player finishes a tournament with a certain score and a certain rank\n- An opening may or may not have games played with that opening\n- A player's rating for a federation can be calculated using the ELO rating system from the results of games in tournaments recognized by the federation\n- A player can have 0, 1 or more titles from the same federation\n- A player is part of at least 1 federation and a federation has at least 1 player\n- A player has participated in at least 1 tournament and a tournament has at least 1 player\n- A player has played at least 1 game at some point\n- The ECO code uniquely identifies the opening\n- A player has a name and a date of birth and citizenship to a country\n\n### ER Model\n\u003cimg src=\"Picture.png\"\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsouradeepdutta%2Ftournament-management-system","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsouradeepdutta%2Ftournament-management-system","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsouradeepdutta%2Ftournament-management-system/lists"}