We're planning to write a Django application that can manage events for a group of users. The things that we need:

  • There is an easy way for the admins to create new events and upon creation users are notified (per email) and can confirm or decline attendance.
  • The user can integrate these events in their calendar client, e.g. thunderbird, iOS, etc.
  • Depending on people attending to the event, we can create some stats, overviews, graphs, etc.
  • Users can change their RSVP status and the admins are notified per email.
  • Events will have probably several linked data to them (maybe some maps, documents, etc.) and other fields for categories, etc.
  • Events might be recursive or one-time events.
  • There is an easy way to add exceptions for recursive events.
  • There is an overview for all events and RSVP status for the events is easily accessible. The count of attendees is listed for each event.
  • The events overview can be filtered by different criteria (date range, category, ...)

We want to use a Django project for managing stats, linked media, listings, etc. And the plan was to add fields for the scheduled date + recurrence. But all existing calendar alternatives for Django I've found so far, e.g. django scheduler, don't seem to integrate easily with any calendar-client that supports caldav/davical. So, because for the most part, the "calendar-related"-wishes from the list above could be achieved by a normal web-calendar, I'm now exploring a new approach:

  • Create a calendar with write permissions for the admin under a calendar server that supports caldav (we're thinking of nextcloud here but is not a must).
  • Create the event + people (emails) to be invited from Django and send them to the web calendar per python-caldav.
  • After the event has been created in the calendar, we need to link this event to our event in django.
  • There must be way to get RSVP status of attendees per caldav.
  • We need to update attendance-changes on Django... maybe a cron-job?

Has someone experience with this constellation and can give some feedback if it would work? Or is there maybe a better/easier way to achieve the same? Any feedback is appreciated :-)

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.