Skip to main content

Documentation

The guides live alongside the code so that implementation details and setup instructions can be updated together.

v3 voting application​

Voting methods​

The current v3 application implements two voting types:

MethodHow it is used
Single Transferable Vote (STV)Voters rank candidates. The Meek STV engine counts the ballots for the configured number of seats.
Yes / No / Abstain (YNA)Voters choose yes, no, or abstain on an issue.

See the voting implementations for the supported options and tally behavior.

Tally and what-if tools​

The monitoring tools guide covers tally input formats and command-line tools. The v3 STV implementation and the what-if tool share the Meek STV engine in monitoring/stv_tool.py.

The STV tally and what-if examples show how to change the seat count, exclude a candidate, or select a runoff field. For new tallies, use the v3 vote-results.json export.

Contribute a change​

Open a pull request against the trunk branch. For Python changes, follow the formatting, linting, and type-checking instructions in AGENTS.md.

Website sources are in site/. The site README explains how to build the website and preview a change.

For design discussions or questions about the code, join the community.