Skip to main content

A viral holding page to collect email addresses with export and unsubscribe functionality.

Project description

Tested versions


  • Python 2.7.9
  • Python 3.3.5
  • Python 3.4.2
  • Python 3.5.0


  • Django 1.8


  • Users can provide their email address and name which is saved in to the database for future exports to systems such as Campaign Monitor.
  • Each user is sent a viral code, which allows them to share your holding page with other people and build up points.
  • Complete use of templates - configure the entire app to your own needs without touching the code


Start up a Django project in the usual way and then ensure you have the requirements installed:

pip install django-widget-tweaks==1.4.1

To run the tests on Python 2.7 install mock too:

pip install mock==1.3.0

Install django-holding-page pip:

pip install django-holding-page

At the end of


At the end of

urlpatterns += patterns(
    url(r'', include('holding_page.subscribers.urls', namespace='subscriber',)),

Remember to migrate:

python migrate

Finally, don’t forget to change Django’s default Site at /admin/ so the emails work correctly.


The following templates can be overwritten in your templates directory. See

Web pages

  • base.html
  • subscriber/subscribe_form.html
  • subscriber/successful_unsubscribe.html
  • subscriber/thank_you.html
  • subscriber/unsubscribe_form.html


  • email/welcome_body.txt
  • email/welcome_subject.txt


To develop the holding page package itself:

git clone git://
cd django-holding-page
pip install -r requirements.txt
./ test
./ migrate

Development Roadmap/Ideas

  • Auto-export to Campaign Monitor, Sales Force, etc
  • “Reserve my username” feature
  • Make it easy to integrate this as a beta holding pen for Django projects (i.e. issue beta invites to your subscribers)
  • Anything else you fancy adding/suggesting
  • Pull requests will be reviewed if you choose to share back.



  • First version.

Project details

Download files

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

Files for django-holding-page, version 1.0.0
Filename, size File type Python version Upload date Hashes
Filename, size django-holding-page-1.0.0.tar.gz (9.6 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page