Skip to main content

Easy scheduling for regular film nights

Project description

Vote4Film

Simplify film selection for regular film nights. Participants can:

  • Add films
  • Vote for films
  • Declare absences
  • See the schedule which takes into account votes and absences

Admins can set the schedule of film nights.

This is a simple WSGI Web Application. The back-end is Django, and the front-end is dynamic HTML served by Django (no JavaScript is used).

Development

  1. poetry install to set-up the virtualenv (one-off)
  2. poetry run ./src/vote4film/manage.py migrate to set-up the local DB (one-off)
  3. poetry run ./src/vote4film/manage.py runserver_plus
  4. make fix, make check and make test before committing

Contributing

Pull requests are welcome :)

Publishing

This application is published on PyPi.

  1. Ensure you have configured the PyPi repository with Poetry (one-off)
  2. Add the release notes in this README.md
  3. poetry bump minor to bump the major/minor/patch version
  4. poetry publish --build to release

To publish to the test repository:

  1. Ensure you have configured the Test PyPi repository with Poetry (one-off)
  2. poetry publish --build -r testpypi to upload to the test repository

Deployment

Unfortunately, I will not provide detailed guidance for production deployment.

Some general tips:

  • Create a virtualenv, e.g. in ~/virtualenv
  • Install with pip install vote4film[postgres]
  • Write the configuration at ~/.config/vote4film/local.env
  • Use Postgres as the database
  • Use Nginx/uWSGI to to serve the site (with HTTPS)
  • Run Django management commands using ./virtualenv/bin/manage

Changelog

v1.1.0 - 2019/11/16

  • Show the register of present/absent users for upcoming films
  • Fix not highlighting films that are not available to be watched
  • Fix parsing of "Not Rated" age ratings resulting in an error

v1.0.9 - 2019/11/13

  • Actually let's not be too dumb about packaging

v1.0.8 - 2019/11/13

  • Rename management command from vote4film to manage
  • Stop trying to be smart about packaging

v1.0.7 - 2019/11/13

  • The same fixes as v1.0.6 but for real this time

v1.0.6 - 2019/11/13

  • Fix url patterns for internal apps in installed environment
  • Fix missing template files in PyPi package (so typical!)

v1.0.5 - 2019/11/12

  • Add optional postgres support, e.g. pip install vote4film[postgres]

v1.0.4 - 2019/11/12

  • Fix bug loading config from XDG config home (sigh)
  • Fix django-extensions being missed from dependencies

v1.0.3 - 2019/11/12

  • Fix config sub-directory used in XDG config home

v1.0.2 - 2019/11/12

  • Load configuration from XDG config home

v1.0.1 - 2019/11/10

  • First release of Vote4Film

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vote4film-1.1.0.tar.gz (34.0 kB view details)

Uploaded Source

Built Distribution

vote4film-1.1.0-py3-none-any.whl (45.6 kB view details)

Uploaded Python 3

File details

Details for the file vote4film-1.1.0.tar.gz.

File metadata

  • Download URL: vote4film-1.1.0.tar.gz
  • Upload date:
  • Size: 34.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/0.12.17 CPython/3.8.0 Linux/5.3.11-arch1-1

File hashes

Hashes for vote4film-1.1.0.tar.gz
Algorithm Hash digest
SHA256 dde2b9da3fdbdf3cdf1f5e0a62ddb4e12af867ba621271586389714b693ff097
MD5 2429faabc4186982b7c1d66f41213621
BLAKE2b-256 a65f90d5a556ced0ea31136f311a66a94233e6bfdc2d88103ffc0535592872a2

See more details on using hashes here.

File details

Details for the file vote4film-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: vote4film-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 45.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/0.12.17 CPython/3.8.0 Linux/5.3.11-arch1-1

File hashes

Hashes for vote4film-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cd8c3d290dd9b13ec9b4f61efc4ce2215e0c2312117343869be4131971372365
MD5 2690cf67c35c124962fbf808a81a4f16
BLAKE2b-256 7dae51a2fa5497e3018606cd76cc622f2a955a6698ece3dbfe2e8ecac879ce06

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page