Skip to main content

Offline race timing console application

Project description

artmr

artmr is a simple text-only, fully off-line timing application designed for small-scale manual competition timing. Heavily based (i.e. shamelessly copied) on asciimatics contact list demo and inspired by classic DOS utilities.

Installation

Install with pip install artmr. Currently tested only on Linux and Mac. Start the program with artmr. If you encounter errors about "Unknown locale: UTF-8, add these lines to ~/.bash_profile:

export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

A (colour, UTF-8) terminal window of > 100 columns is recommended.

Usage

Load a start list with the command line option -c, format is number,name,category,team, one per line. You can also load a start list with F3 from the start list screen. Names and numbers should be unique and categories are optional but free-form. See competitors.example.txt for an example file.

Use the Start List view to mark actually starting competitors and then continue on to the Timing screen.

Start the race with the Start (space or s) button from the Timing screen and add a new split/finish time with Split (space or s). Add a competitor bib number with Edit (e). Jump between start list and splits with Tab. Category filter can be accessed with F2. You can still add competitors while the race is running from the start list. All competitors will have the same start time.

Start time and splits are saved on disk so you can quit the application and data is kept. Times are rounded to whole seconds.

You can export the results with x. This creates [competition name]_[category]_[time].csv file in the current directory in format rank,elapsed time,difference,number,name,category,team. Export will contain the selected category.

To start a new race, use --reset command line option. Previous data is destroyed. Alternatively, you can take a backup of the ~/.artmr/results_1.db file and keep a safe copy of the results.

Screenshots

Start list

splits

TODO

  • splash screen
  • make a UI for multiple competitions, database already supports this
  • support for lap timing
  • change competitor model to be many-to-many via a Participation table
  • Windows support
  • automatic data export/sync to other services

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

artmr-1.0.tar.gz (8.2 kB view details)

Uploaded Source

Built Distribution

artmr-1.0-py2-none-any.whl (9.3 kB view details)

Uploaded Python 2

File details

Details for the file artmr-1.0.tar.gz.

File metadata

  • Download URL: artmr-1.0.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/2.7.15rc1

File hashes

Hashes for artmr-1.0.tar.gz
Algorithm Hash digest
SHA256 536d183eda1ec1df14799ce4c11b55b5a34b146e18e01a2521164f30fdb36201
MD5 cc044042aba2d9eab7c3752f45ae9d65
BLAKE2b-256 70fbc1063ba9f767a548a799f5399ae6ec56538ca22749594bbbadc34c63f093

See more details on using hashes here.

File details

Details for the file artmr-1.0-py2-none-any.whl.

File metadata

  • Download URL: artmr-1.0-py2-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/2.7.15rc1

File hashes

Hashes for artmr-1.0-py2-none-any.whl
Algorithm Hash digest
SHA256 d5c05f0f08564ffcc77d481c24e4d4f55ebb8c50bb250268da5a54085182d8a2
MD5 e4e41d6c5bacc7574e3301349d6cec6e
BLAKE2b-256 041012307edeab84d4722a33db23098b4acdc96f2edee07c9b2b51b25f59a86c

See more details on using hashes here.

Supported by

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