Open-source election counting https://yingtongli.me/opentally/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
RunasSudo 1a57fba093
CLI HTML output: Correctly generate print view for other report styles
1 month ago
docs Update nomenclature for van der Craats (‘Wright’) STV 1 month ago
homepage Update documentation 4 months ago
html Allow print from CLI HTML output 1 month ago
scripts Clean up utility files 1 month ago
src CLI HTML output: Correctly generate print view for other report styles 1 month ago
tests Update nomenclature for van der Craats (‘Wright’) STV 1 month ago
.gitignore Update scripts 2 months ago
COPYING Initial commit 1 year ago
Cargo.lock Use NoHashHasher for Candidate HashMaps to improve performance 2 months ago
Cargo.toml Use NoHashHasher for Candidate HashMaps to improve performance 2 months ago
README.md Rename docs files to avoid reserved Windows paths 9 months ago

README.md

OpenTally

OpenTally is an application for counting various preferential voting elections, with an academic focus, and emphasis on configurability.

OpenTally may be used in a number of different ways:

  • as an online web application, no installation or special software required
  • as a standalone command line application
  • as a Rust library within another application

Features

OpenTally accepts data in the BLT file format, and can count votes using:

OpenTally is highly customisable, including options for:

  • different quotas and quota rules (e.g. exact Droop, Hare)
  • calculations using fixed-point arithmetic, guarded fixed-point (quasi-exact) or exact rational numbers
  • different tie breaking rules (backwards, random, manual) with auditable deterministic random number generation
  • multiple constraints (e.g. affirmative action rules)
  • equal rankings

Online usage

See the quick start guide for how to use OpenTally online.

Command line usage

OpenTally may also be invoked as a command line application. Run ./opentally --help to view help.

For example, run ./opentally stv path/to/blt_file.blt --ties backwards random --random-seed foobar.