pyrcv


Namepyrcv JSON
Version 1.0.2 PyPI version JSON
download
home_pagehttps://github.com/chrisroat/pyrcv
SummaryPython API for adjudicating single transferable vote elections. Also contains basic web server to adjudicate results in CSV format.
upload_time2024-01-12 20:42:03
maintainer
docs_urlNone
authorChris Roat
requires_python>=3.10
licenseGNU General Public License v3
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            =====
pyrcv
=====


.. image:: https://img.shields.io/pypi/v/pyrcv.svg
        :target: https://pypi.python.org/pypi/pyrcv
        :alt: PyPi Status

.. image:: https://github.com/chrisroat/pyrcv/actions/workflows/ci.yml/badge.svg
        :target: https://github.com/chrisroat/pyrcv/actions/workflows/ci.yml
        :alt: Test Status

.. image:: https://readthedocs.org/projects/pyrcv/badge/?version=latest
        :target: https://pyrcv.readthedocs.io/en/latest/?version=latest
        :alt: Documentation Status


Python project for adjudicating ranked choice voting elections using the
single transferable vote (STV) method.  For more information on ranked
choice voting, visit the `FairVote website on RCV`_.

The project also contains a small flask server for adjudicating and visualizing
election results from a CSV file.  It is automatically deployed at at `pyrcv.org`_

* Free software: GNU General Public License v3
* Documentation: https://pyrcv.readthedocs.io.


Features
--------

* General standards and APIs for voting data and vote tabulation.
* Tabulation of ranked-choice elections using the single-transferable-vote (STV) method.
* Support for both single-winner and multi-winner contests.
* Generation of Sankey diagram showing the flow of vote counts through the
  rounds of a multi-round election.
* Parser for converting Google Form based election output to voting data standard format.
* Web server which processes CSV data output from a Google Form based election, and
  displays winners and a Sankey diagram.


Credits
-------

Inspired by FairVote_ and CalRCV_.  FairVote's examples were extremely helpful for
development and correctness-testing.

This package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.

.. _FairVote website on RCV: https://fairvote.org/our-reforms/ranked-choice-voting/
.. _pyrcv.org: https://www.pyrcv.org
.. _FairVote: https://fairvote.org/
.. _CalRCV: https://www.calrcv.org/
.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/chrisroat/pyrcv",
    "name": "pyrcv",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": "",
    "keywords": "",
    "author": "Chris Roat",
    "author_email": "chris.roat@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/2b/4f/a01a53bbc23ee5e6e8dcde38ce4e9bb939422fe1f3f3fdc20e2a7dd123ee/pyrcv-1.0.2.tar.gz",
    "platform": null,
    "description": "=====\npyrcv\n=====\n\n\n.. image:: https://img.shields.io/pypi/v/pyrcv.svg\n        :target: https://pypi.python.org/pypi/pyrcv\n        :alt: PyPi Status\n\n.. image:: https://github.com/chrisroat/pyrcv/actions/workflows/ci.yml/badge.svg\n        :target: https://github.com/chrisroat/pyrcv/actions/workflows/ci.yml\n        :alt: Test Status\n\n.. image:: https://readthedocs.org/projects/pyrcv/badge/?version=latest\n        :target: https://pyrcv.readthedocs.io/en/latest/?version=latest\n        :alt: Documentation Status\n\n\nPython project for adjudicating ranked choice voting elections using the\nsingle transferable vote (STV) method.  For more information on ranked\nchoice voting, visit the `FairVote website on RCV`_.\n\nThe project also contains a small flask server for adjudicating and visualizing\nelection results from a CSV file.  It is automatically deployed at at `pyrcv.org`_\n\n* Free software: GNU General Public License v3\n* Documentation: https://pyrcv.readthedocs.io.\n\n\nFeatures\n--------\n\n* General standards and APIs for voting data and vote tabulation.\n* Tabulation of ranked-choice elections using the single-transferable-vote (STV) method.\n* Support for both single-winner and multi-winner contests.\n* Generation of Sankey diagram showing the flow of vote counts through the\n  rounds of a multi-round election.\n* Parser for converting Google Form based election output to voting data standard format.\n* Web server which processes CSV data output from a Google Form based election, and\n  displays winners and a Sankey diagram.\n\n\nCredits\n-------\n\nInspired by FairVote_ and CalRCV_.  FairVote's examples were extremely helpful for\ndevelopment and correctness-testing.\n\nThis package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.\n\n.. _FairVote website on RCV: https://fairvote.org/our-reforms/ranked-choice-voting/\n.. _pyrcv.org: https://www.pyrcv.org\n.. _FairVote: https://fairvote.org/\n.. _CalRCV: https://www.calrcv.org/\n.. _Cookiecutter: https://github.com/audreyr/cookiecutter\n.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage\n",
    "bugtrack_url": null,
    "license": "GNU General Public License v3",
    "summary": "Python API for adjudicating single transferable vote elections.  Also contains basic web server to adjudicate results in CSV format.",
    "version": "1.0.2",
    "project_urls": {
        "Bug Tracker": "https://github.com/chrisroat/pyrcv/issues",
        "Homepage": "https://github.com/chrisroat/pyrcv",
        "Production Server": "https://www.pyrcv.org"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "da7a5bab3f6f8676f81d3a47541677c154ab7b4aab65590c8882c6b744815108",
                "md5": "ce553d090a4a7665518b762fa15a735d",
                "sha256": "84b26055c4084e9b4594e02c786e5e4b43643831b1c617c817974d3bcea83b2a"
            },
            "downloads": -1,
            "filename": "pyrcv-1.0.2-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "ce553d090a4a7665518b762fa15a735d",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": ">=3.10",
            "size": 14687,
            "upload_time": "2024-01-12T20:42:01",
            "upload_time_iso_8601": "2024-01-12T20:42:01.624963Z",
            "url": "https://files.pythonhosted.org/packages/da/7a/5bab3f6f8676f81d3a47541677c154ab7b4aab65590c8882c6b744815108/pyrcv-1.0.2-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2b4fa01a53bbc23ee5e6e8dcde38ce4e9bb939422fe1f3f3fdc20e2a7dd123ee",
                "md5": "fb469dd3f33a1d2f454af057bb217d9e",
                "sha256": "c04c736f1d165412ebf0e44cbf05154c75e7cecfda6d4a8e22272c1aca53d885"
            },
            "downloads": -1,
            "filename": "pyrcv-1.0.2.tar.gz",
            "has_sig": false,
            "md5_digest": "fb469dd3f33a1d2f454af057bb217d9e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 24491,
            "upload_time": "2024-01-12T20:42:03",
            "upload_time_iso_8601": "2024-01-12T20:42:03.174680Z",
            "url": "https://files.pythonhosted.org/packages/2b/4f/a01a53bbc23ee5e6e8dcde38ce4e9bb939422fe1f3f3fdc20e2a7dd123ee/pyrcv-1.0.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-12 20:42:03",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "chrisroat",
    "github_project": "pyrcv",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "tox": true,
    "lcname": "pyrcv"
}
        
Elapsed time: 0.16220s