CalDAV libraries

supported implementations


Open source/Java

CalDAV4j is a protocol library that extends the Slide project’s WebDAV client library (which itself is an extension of the Apache’s HttpClient library) to allow high level manipulation of CalDAV calendar collections as well as lower level CalDAV protocol interactions.


Open source/Python

A protocol library for CalDAV with an interactive shell.


Open source/Python

This project is a CalDAV (RFC4791) client library for Python.


Open source/Java

iCal4j is a Java library used to read and write iCalendar data streams as defined in RFC2445.


Open Source/Python

Simple Python 3 library to download, parse and query iCal sources.

icalendar (Python)

Open source/Python

A Python library to parse and generate iCalendar files.

icalendar (Ruby)

Open source/Ruby A Ruby library to parse and generate iCalendar files.


jsical - Javascript parser for rfc5545

IT Hit WebDAV Server Engine for .NET

Commercial License

With IT Hit Engine you can add CalDAV and CardDAV support to your .NET web application in minutes using Visual Studio wizard. The IT Hit SDK is shipped with iCalendar and vCard parsing libraries covered by over 1500 unit tests and several C# template projects with Microsoft SQL and file system back-end storages that you can use as a starting point for CalDAV-enabling your CRM/CMS/ERP.


Open source/C

An open source reference implementation of the iCalendar data type and serialization format.


Java library

Milton is a java library for WebDAV, CalDAV and CardDAV server implementations.


Open source/Python

The library used by CalendarServer as part of its CalDAV/iCalendar support.

SOPE - OpenGroupware

Open source/Objective-C

The SOPE iCal package (sope-ical) contains a SaxObjC driver for processing iCalendar files using libical (iCalSaxDriver) and a library which contains model classes for iCalendar/vCard objects.


Open source/Swift

Library to generate iCalendar objects using Swift based on libical


Open Source Command-Line Tool

vdirsyncer is a command-line tool to synchronize a CalDAV/CardDAV server with a local iCalendar/vCard file, or a folder of those. It can also be used to synchronize two DAV servers with each other.


Open source/Python

A Python library used to read and write iCalendar data streams as defined in RFC2445. Also does vCards. Now maintained by eventable.

unsupported implementations


Open source/C

An open source library that is the basis for the CalDAV plugin currently under development for KDE Kontact.

This project is no longer being maintained.

Mulberry iCalendar Library

Open source/C++/Python/Java

The library used by the Mulberry client for its iCalendar and iTIP handling. Also includes Java and Python ports with similar APIs to the C++ one.

Not supported since 2005


Open source/Ruby

Ruby library which provides parsing, generation, and usage of RFC 2445 (iCalendar) data, including support for enumerating occurrences of recurring components and time zone conversions.

Status uncertain; appears to have been abandoned since 2011

Was this page helpful for you? Please give us Feedback.