Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Weightlifting Meet Controller

alt text

A Python-based desktop application for managing Olympic weightlifting competitions, built to control live meet flow, athlete attempts, timing rules, rankings, and results export.

Originally built for an in-house WL comp, where athlete weight, gender, and sinclair performance was not tracked.

I wanted to develop a WL meet controller which was not just another excel spreadsheet, was easy to use, and visually clearer.

Purpose

This system was developed to manage a real in-house weightlifting competition, providing:

  • Live attempt tracking
  • Automatic lifter ordering
  • Competition timing rules
  • Session control
  • Results export
  • Real-time rankings
  • Judge-friendly interface

Features

  • Athlete registration
  • Snatch & Clean & Jerk phases
  • Attempt tracking (3+3 attempts)
  • Two-minute rule enforcement
  • Automatic lifter queue ordering
  • Live competition clock
  • Global session timer
  • Real-time ranking
  • Visual state indicators
  • CSV export for official results
  • Fullscreen competition display

How to run

Prerequisites:

  • Python 3.9+ (Tkinter is included with the standard Windows installer)

Run:

python meet.py

Technical Architecture

  • Python
  • Tkinter GUI framework
  • Event-driven architecture
  • Timer-based scheduling
  • Stateful application design
  • Model–view separation
  • CSV data export
  • Desktop application design

Manual test checklist

  • Launch the app and add 2-3 athletes
  • Enter Snatch openers and start the session
  • Mark Good/No Lift and confirm the current/next lifter updates
  • Switch to C&J, verify the clock resets but the session timer continues
  • Export CSV and verify file contents and ranking order

Real-world Usage

This system was used in a live competition environment for managing athlete flow, judging, timing, and result recording during an in-house Olympic weightlifting meet.

Why this matters

This project demonstrates:

  • Real-world problem solving
  • UI/UX design for operational tools
  • Event-driven systems
  • State management
  • Application architecture
  • Production-style tooling

About

Event-driven Python GUI application for controlling live Olympic weightlifting meets, featuring real-time attempt tracking, competition timers, athlete state management, ranking logic, and CSV result export

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages