Skip to content

mggg/VoteKit

VoteKit

VoteKit is a Swiss army knife for computational social choice research.

Helpful links: Source Repository | Documentation | Issues & Feature Requests | Contributing | MGGG.org

PyPI badge Test badge

Installation

Votekit can be installed through any standard package management tool:

pip install votekit

For more detailed instructions, please see the installation section of the VoteKit documentation.

Issues and Contributing

This project is in active development in the mggg/VoteKit GitHub repository, where bug reports and feature requests, as well as contributions, are welcome.

VoteKit uses uv for dependency management and go-task for common development commands. To set up a contributor environment, install go-task and run task setup from the repository root. That bootstraps Astral's official standalone uv, installs Python 3.11 if needed, and keeps the managed tooling under .task-tools/.

Before making a pull request, run the following:

  • task format
  • task lint
  • task typecheck
  • task test
  • task coverage

To scope a test run to a subdirectory or file, use task test -- tests/<path> or task test:tests/<path>.

If you already have uv on your PATH, you can also run the underlying commands directly with uv run, for example uv run pytest tests --cov=src/votekit --cov-report=term-missing for a coverage run or uv run pytest tests --runslow for the full test suite. The repository root CONTRIBUTING.md contains the current contributor workflow, code style guidance, and pull request expectations.

About

A Swiss Army Knife for computational social choice research

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages