Out of the box

This tutorial covers what it is like to install a Joyous calendar, with no configuration or customisations, on a fresh Wagtail site.

  1. You need to have setup a Wagtail site. Follow the Wagtail instructions at Getting started if you haven’t already. I will assume your Wagtail site is called mysite, replace this with your actual site name.
  1. Install Joyous and its dependencies:
$ pip install ls.joyous
  1. Add ls.joyous and wagtail.contrib.modeladmin to your INSTALLED_APPS setting in mysite/mysite/settings/base.py.

  2. Run the Django manage.py commands for setting up a new application to your site.

    $ ./manage.py migrate
    $ ./manage.py collectstatic --no-input
  3. Now you have added the ls.joyous application to your project, start your server.

    $ ./manage.py runserver

    And, point your web browser at http://localhost:8000/admin/.

  1. Select Home | Add child page, and you will see that the Calendar page is a new possibility.
Create a page in Home
  1. Go ahead and choose Calendar page. Add a Title and maybe some Intro (introductory text).
New Calendar page
  1. Publish this. Select View live, and there is our new Joyous calendar.
Our Calendar


There can only be one CalendarPage per Wagtail site, so if you wish to repeat step 5 you will have to delete this one first. (See SpecificCalendarPage if you do want multiple calendars.)

  1. To add an event to the calendar, add it as a child-page. You have the choice of four types (We can simplify this - covered in Keeping things simple).

    • Event page
    • Multiday event page
    • Multiday recurring event page
    • Recurring event page
  2. Choose Event page. Add a Title, Date and some Details. The Time zone will default to your current time zone which is set in your Wagtail Account settings.

  1. Publish your event. View the calendar again. Your event will be displayed on the date you set for it.

    Our Calendar

    The calendar can also be displayed in a weekly view.

    Our Calendar

    And as a list of upcoming events.

    Our Calendar

Probably you will want to customise the calendars and events on your site to suit your audience, but hopefully this tutorial has given you a useful introduction to Joyous.