Clone wiki

django-elect / Home


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 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.


  • Python 2.4-2.6
  • Django 1.0+


Run "python install" to install django_elect into your site-packages folder. This command depends on setuptools, which will be automatically downloaded and installed if it is not present.

Using in an Existing Django Project

If you want to integrate django_elect with an existing project, follow these steps:

  • Add "django_elect" to the INSTALLED_APPS tuple in the project's file
  • Add (r'^election/', include('django_elect.urls')), to the project's file
  • Copy the "django_elect/media" directory, or create a symlink, in the project's media directory. Then, set the "DJANGO_ELECT_MEDIA_ROOT" setting in the project's file to the appropriate URL prefix.

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. Then, configure your Web server to serve the static media files associated with django_elect. See the following pages for more information: