Skip to main content

wafer

Github actions CI build status Wafer documentation Translation status

A wafer-thin web application for running small conferences. Built using Django.

Licensed under the ISC License.

Documentation

Available on readthedocs.org.

Supported Django versions

Wafer supports Django 3.2, Django 4.0 - 4.2 and Django 5.0 .

Installation

  1. wafer can be installed either from pypi (pip install wafer) or from the github repository.

  2. If installing from github, pip install -r requirements.txt should install all the required python and django dependencies.

  3. Wafer uses npm to manage front-end dependencies

    • Make sure you have a recent version of Node.js installed that includes npm.

    • Run npm install to install all dependencies, which also copies them to wafer/static/vendor.

  4. Install the wafer applications manage.py migrate

  5. If you don’t have one yet, create a superuser with manage.py createsuperuser.

  6. Examine the settings.py file and create a localsettings.py file overriding the defaults as required.

    STATIC_FILES, WAFER_MENUS, MARKITUP_FILTER, WAFER_PAGE_MARKITUP_FILTER, WAFER_TALKS_OPEN, WAFER_REGISTRATION_OPEN and WAFER_PUBLIC_ATTENDEE_LIST will probably need to be overridden.

    If you add extensions to MARKITUP_FILTER or WAFER_PAGE_MARKITUP_FILTER, be sure to install the appropriate python packages as well.

  7. Wafer uses the Django caching infrastructure in several places, so the cache table needs to be created using manage.py createcachetable.

  8. Create the default ‘Page Editors’, ‘Talk Mentors’ and other useful groups using manage.py wafer_add_default_groups.

  9. Log in and configure the Site:

    • The domain will be used as the base for e-mails sent during registration.

    • The name will be the conference’s name.

  10. Have a fun conference.

Running wafer

To run a local server for development and testing, use the standard Django manage.py runserver, after doing the installation.

For running the server in production, please see the Django documentation on the various possible approaches.

Features

  • Support for adding and editing sponsors via Django admin.

  • Schedule can be created and updated via Django admin.

  • Pages for static content, news and so forth can be handled via Django admin.

    • Can be delegated to the ‘Page Editors’ group.

    • Pages can be updated via the web interface.

  • Talk submissions, review and acceptance.

  • Generate a static version of the site for archival.

Translation

Translations for wafer are managed at weblate.org

Selenium tests

wafer includes a small set of selenium tests to test various bits of javascript used in the site (mostly in the schedule editor).

To run the tests, you will need to install selenium - pip install selenium and also run npm install to install the required javascript dependencies.

The tests can be run using the selenium tag, or using the individual browser tags (currently firefox and chrome).

Metadata

Release files for wafer 0.17.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wafer 0.17.0
File Size Uploaded
wafer-0.17.0.tar.gz 342.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for wafer 0.17.0
File Interpreter ABI Platform
wafer-0.17.0-py3-none-any.whl Python 3 none any Details

Total release size: 764.5 kB

Release files / wafer-0.17.0.tar.gz

Download URL wafer-0.17.0.tar.gz
Size 342.1 kB
Tags Source
SHA-256 checksum
How to use checksums
7e373a271a24c7ae83a41e12b2afb259e480358272e39020bf15986ba1309a6e
BLAKE2b-256 checksum
How to use checksums
42ecf018fab60c8ef2ca1384a04232a66266a95902eba29730f01f405a0d654f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.5

Release files / wafer-0.17.0-py3-none-any.whl

Download URL wafer-0.17.0-py3-none-any.whl
Size 422.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
895406d4c17d6f2b6da8a0124446ba8027bd10aaa34a13b464a51ee0fa2d2495
BLAKE2b-256 checksum
How to use checksums
39f459c6fbe1b95fd2b36ca8e748e9ffbb4b4ebdaad7a0ccf9759a9c754b95d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.5

Release history Release notifications | RSS feed

This release

0.17.0 This release

2 release files

0.16.1

2 release files

0.15.1

2 release files

0.15.0

2 release files

0.13.0

2 release files

0.12.0

2 release files

0.11.0

2 release files

0.9.4

3 release files

0.9.3

3 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.1

3 release files

0.8.0

3 release files

0.7.7

2 release files

0.7.6

3 release files

0.7.5

3 release files

0.7.4

2 release files

0.7.3

3 release files

0.7.2

3 release files

0.7.1

3 release files

0.7.0

3 release files

0.6.0

3 release files

0.5.7

1 release file

0.5.6

3 release files

0.5.5

3 release files

0.5.4

3 release files

0.5.3

0.5.2

3 release files

0.5.1

3 release files

0.5.0

3 release files

0.4.9

3 release files

0.4.7

3 release files

0.4.6

3 release files

0.4.5

3 release files

0.4.4

3 release files

0.4.3

3 release files

0.4.2

3 release files

0.4.1

3 release files

0.4.0

3 release files

0.3.7

3 release files

0.3.6

3 release files

0.3.5

3 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

3 release files

0.3.1

3 release files

0.3.0

3 release files

0.2.7

3 release files

0.2.6

3 release files

0.2.5

3 release files

0.2.4

3 release files

0.2.3

3 release files

0.2.2

3 release files

0.2.1

3 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page