Skip to main content

A wafer-thin Django library for running small conferences.

Project description

wafer
=====

|wafer-ci-badge| |wafer-docs-badge|

.. |wafer-ci-badge| image:: https://travis-ci.org/CTPUG/wafer.png?branch=master
:alt: Travis CI build status
:scale: 100%
:target: https://travis-ci.org/CTPUG/wafer

.. |wafer-docs-badge| image:: https://readthedocs.org/projects/wafer/badge/?version=latest
:alt: Wafer documentation
:scale: 100%
:target: http://wafer.readthedocs.org/

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

Licensed under the `ISC License`_.

.. _ISC License: https://github.com/CTPUG/wafer/blob/master/LICENSE


Documentation
=============

Available on `readthedocs.org`_.

.. _readthedocs.org: http://wafer.readthedocs.org/

Supported Django versions
=========================

Wafer supports Django 1.11 and Django 2.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_TALKS_OPEN``, ``WAFER_REGISTRATION_OPEN`` and
``WAFER_PUBLIC_ATTENDEE_LIST`` will probably need to be
overridden.

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

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

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

9. Create the default 'Page Editors' and 'Talk Mentors' groups using
``manage.py wafer_add_default_groups``.

10. Have a fun conference.

Installing Bootstrap
====================

The default templates and css files require jquery and bootstrap to work.

wafer provides a bower.json file to simplify the installation process. This
requires a working nodejs installation.

1. Install bower
``npm install bower``

2. Use bower to install appropriate versions of bootstrap and jquery
``$(npm bin)/bower install``

3. Move files to the correct location
``manage.py collectstatic``

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.


TODO
====

* Make the code easier to use for other conferences (split out theming, etc.).
* Improve the talk submission management module:

* Better display of accepted talks.

* Make various messages easier to customise.
* Improve admin support for the schedule:

* Show table of slots in admin interface.
* Improve handling of moving talks around.

* Support for adding news (and other templated pages) via Django admin.
* Maybe add some cool visualizations with d3:

* Number of people signed up in various categories.
* Places remaining.
* Sponsorship slots remaining.
* Days until various deadlines.

* Other improvements
* Add many tests


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

wafer-0.7.3.tar.gz (144.7 kB view details)

Uploaded Source

Built Distributions

wafer-0.7.3-py3-none-any.whl (192.3 kB view details)

Uploaded Python 3

wafer-0.7.3-py2-none-any.whl (192.3 kB view details)

Uploaded Python 2

File details

Details for the file wafer-0.7.3.tar.gz.

File metadata

  • Download URL: wafer-0.7.3.tar.gz
  • Upload date:
  • Size: 144.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.6

File hashes

Hashes for wafer-0.7.3.tar.gz
Algorithm Hash digest
SHA256 dd6c3f58c40ac71f78a3ae98c234f13f8f15e8d326f450a9bb4e322ad17c2208
MD5 1fe5810daa02bfe622dd576a8217966a
BLAKE2b-256 dae5cb744c75fe1858eb2ffc517b73d5f969c0afaf87440048ac00279987fa65

See more details on using hashes here.

File details

Details for the file wafer-0.7.3-py3-none-any.whl.

File metadata

  • Download URL: wafer-0.7.3-py3-none-any.whl
  • Upload date:
  • Size: 192.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.6

File hashes

Hashes for wafer-0.7.3-py3-none-any.whl
Algorithm Hash digest
SHA256 64b9f89d7c731a6bfff2791b293cc5baf495816639d82de5352aaeb24d6a1ded
MD5 97ca1106b89558656f85ab050f00178f
BLAKE2b-256 aa3b109b1ef4fc4cf25c37fc950b2c5005e1c67086f98bde04415a4dc4420859

See more details on using hashes here.

File details

Details for the file wafer-0.7.3-py2-none-any.whl.

File metadata

  • Download URL: wafer-0.7.3-py2-none-any.whl
  • Upload date:
  • Size: 192.3 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.6

File hashes

Hashes for wafer-0.7.3-py2-none-any.whl
Algorithm Hash digest
SHA256 d0033b6b1422b9aee0177e434a6c8c6f7fca5d0bf01ef819f3e403c9557f4878
MD5 15f363c4ea3e3aa8ce421bbcee96d347
BLAKE2b-256 f4826a0cc0107acd48b800bfd2673ded71862533000321da0e44ab53f039c5bf

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