CalDAV server

Published: 2017-12-22 (last updated: 2018-11-26)

calendar

Calendaring software provides users with an electronic version of a calendar. Additionally, the software may provide an appointment book, address book, or contact list.

We implemented a CalDAV server based on MirageOS. CalDAV is a calendaring extension to WebDAV, an HTTP-based protocol that allows to read, write and alter files, directories and file properties.

The calendar data can be stored in memory, on disk, or in a git repository using irmin. We tested interoperability with most common CalDAV clients (DAVdroid on Android, Thunderbird Lightning on Linux/Unix/Windows, Apple calendar app on MacOS and iOS).

How to try the calendar server

There is a live instance for testing available at calendar.robur.io. There is a test user called test with password password for your convenience.

If you use MacOS, you need add a new CalDAV account in the calendar app, set it to manual, and enter the above URL, username and password. For iOS you need to add an account in the calendar app, select "other" and then CalDAV. Discovery of calendars happens automatically.

If you use Thunderbird Lightning, you need to create a new calendar on the network, select CalDAV as remote calendar format, and enter a full calendar URL, e.g. https://calendar.robur.io/calendars/<username>/calendar.

If you use DAVdroid, you can enter the short URL like for MacOS, but you need to append /calendars. Discovery of calendars happens automatically.

How to host the calendar server yourself

See the installation instructions on the project home on github. Time to add some calendars and fun meetups!

Funding

This project was funded via the prototype fund. Thanks a lot!