django-elect is a simple voting app intended for small-scale elections within academic organizations. It relies on Django's authentication system for verifying voter identity.


  • Highly customizable and easy-to-use admin interface.
  • Supports both preferential (using the Borda count method) and plurality ballots with optional secrecy.
  • Supports write-in candidates.
  • Customizable biographies page with biographical information on each candidate.
  • Statistics page with up-to-date election results.
  • Can generate Excel spreadsheets with complete election data.



Run python install to install django-elect and any missing dependencies.

Using in an Existing Django Project

If you want to integrate django-elect with an existing project, follow these steps:

  1. Add "django_elect" to the INSTALLED_APPS tuple in the project's file.
  2. Add django-autocomplete-light to INSTALLED_APPS as detailed here.
  3. Add (r'^election/', include('django_elect.urls')), to the project's file.

Using Standalone

If you don't have an existing Django project, you'll need to create one. Use the project in the "example_project" directory as a starting point and customize the file for your server. See the following pages for more information: