Comparison of CalDAV and CardDAV implementations

From HandWiki
Short description: Comparison of computer protocols

A comparison of CalDAV and CardDAV implementations offers two overviews of client and server computer software implementations of the CalDAV and CardDAV protocols.

Client implementations

Client name Platform License WebDAV ACL editor Discovery of other user’s collections ICalendar events ICalendar tasks ICalendar journals ICalendar VAVAILABILITY (RFC 7953) CalDAV Scheduling CardDAV vCard Synchronization User interface Online store .well-known URLs FBURL DNS SRV handles home-sets
AgenDAV[1] Cross-platform JavaScript Web browser GNU GPL Yes limited No Yes N/A Unknown No No Does not arrange meetings with participants N/A out of scope AgenDAV's fullcalendar.io No No The used server is fixed in the configuration file No Does not arrange meetings with participants No the caldav-server settings need to be fixed in AgenDAV's configuration file Yes
Cadaver[2] Command-line GNU GPL Unknown Unknown Yes Unknown Unknown Unknown Unknown Yes Unknown Unknown Unknown Unknown Unknown Unknown Unknown
aCal[3] Android GNU GPL Unknown Unknown Yes Yes Unknown Unknown Unknown N/A Unknown aCal aCal Unknown Unknown Unknown Unknown
AndroidCaldavSyncAdapater[4] Android GNU GPL Unknown Unknown Yes N/A Unknown Unknown Unknown N/A out of scope Android Google Play Unknown No Out of scope Unknown Unknown
CalDavZAP[5] Cross-platform JavaScript Web browser AGPL No No Yes Yes Unknown No No Does not arrange meetings with participants N/A out of scope CalDavZAP No No The used server is fixed in the configuration file No Does not arrange meetings with participants No The used server is fixed in the configuration file Yes
CardDavMATE[6] Cross-platform JavaScript Web browser AGPL No No out of scope out of scope out of scope out of scope out of scope Yes vCard 3.0 only No CardDavMATE No No The used server is fixed in the configuration file No Out of scope No The used server is fixed in the configuration file Yes
InfCloud (CalDavZAP+CardDavMATE)[7] Cross-platform JavaScript Web browser AGPL No No Yes Yes Unknown No No Does not arrange meetings with participants Yes vCard 3.0 only No InfCloud No No The used server is fixed in the configuration file No Does not arrange meetings with participants No The used server is fixed in the configuration file Yes
Chandler Desktop[8] Cross-platform Python Apache Unknown Unknown Yes Yes Unknown Unknown Unknown No Unknown Unknown Unknown Unknown Unknown Unknown Unknown
DAVx⁵[9] Android GNU GPL No No Yes Yes out of scope out of scope No (except attendees/invitations) Yes No (server always wins) Android, OpenTasks Google Play, OpenTasks Yes out of scope Yes Yes
Tasks.org[10] Android GNU GPL No No No Yes No No No No No Android Google Play Yes No No Yes
jqCalDAV[11] Cross-platform JavaScript Web browser MIT Unknown Unknown Yes Yes Unknown Unknown Unknown N/A Unknown Unknown Unknown Unknown Unknown Unknown Unknown
KCardDAV[12] (discontinued) Cross-platform Kontact add-on GNU GPL Unknown Unknown N/A N/A N/A Unknown Unknown Yes Unknown Unknown Unknown Unknown Unknown Unknown Unknown
KOrganizer, KAddressBook, Kontact Unix-KDE GNU GPL Unknown Unknown Yes Yes Yes Unknown Unknown Yes Unknown KOrganizer KAddressbook KOrganizer KAddressbook Unknown Unknown Unknown Unknown
Lightning[13] Cross-platform Thunderbird Add-on MPL, GPL, LGPL Unknown Unknown Yes Yes Unknown Unknown Unknown N/A Out of scope Lightning Lightning Unknown Unknown Unknown Unknown probably not
CardBook[14] Cross-platform Thunderbird Add-on MPL No No Out of scope Out of scope Out of scope Out of scope Out of scope Yes vCard 3.0 and vCard 4.0 Yes CardBook Mozilla Add-ons (ATN) Yes Out of scope No partial
MineTime[15] Cross-platform Proprietary No No Yes No No No No No No No MineTime minetime.ai No No No
Mulberry[16] Cross-platform Apache Unknown Unknown Yes Yes Unknown Unknown Unknown Yes Unknown Unknown Unknown Unknown Unknown Unknown Unknown
Outlook CalDav Synchronizer[17] Windows AGPL Unknown Unknown Yes Yes Unknown Unknown Unknown Yes Unknown Outlook Unknown Yes Unknown Yes Yes
pyCardDAV[18] Cross-platform Python MIT Unknown Unknown N/A N/A N/A Unknown Unknown Yes Unknown Unknown Unknown Unknown Unknown Unknown Unknown
The Bat![19] Windows Proprietary Unknown Unknown No No No Unknown Unknown Yes Unknown The Bat! The Bat!'s address book Unknown Unknown Unknown Unknown
Inverse SOGo Connector-Integrator[20] Cross-platform Thunderbird Add-on MPL, GPL, LGPL Unknown Unknown Yes Yes Unknown Unknown Unknown Yes Unknown Mozilla Mozilla Add-ons Unknown Unknown Unknown Unknown
Evolution Cross-platform GNU GPL No No Yes Yes Yes No No Yes vCard 3.0 only Unknown Evolution Evolution Yes Yes if the URL does not require authentication Yes Yes
ReminderFox[21] Cross-platform Firefox MPL 1.1 Unknown Unknown Yes Yes Unknown Unknown No N/A Unknown ReminderFox Yes Unknown Unknown Unknown Unknown

There are more clients, mentioned for completeness:

Server implementations

Server name License Programming language RFC 2616 HTTP/1.1 RFC 2617 HTTP auth. RFC 2518 Web­DAV RFC 3253 Web­DAV vers. RFC 3744 Web­DAV ACL RFC 4324 iCal CAP RFC 4331 Web­DAV quota RFC 4709 Web­DAV mount RFC 4791 Cal­DAV RFC 4918 Web­DAV ext. RFC 5397 Web­DAV current principal RFC 5545 rev. iCal

(Availability Check)

RFC 5546 iCal iTIP(Group Scheduling) RFC 5689 Web­DAV ext. MKCOL RFC 5995 Web­DAV POST add member RFC 6352 Card­DAV vCard RFC 6578 Web­DAV sync RFC 6638 Cal­DAV sched.(Auto-Schedule) RFC 7529 iCal RSCALE RFC 7540 HTTP/2 RFC 7809 Cal­DAV time zones by ref. RFC 7953 iCal VAVAIL­ABILITY Free-busy URL
Baïkal[22][23] GNU GPL PHP Yes [Note 1] Yes Yes No Some No No No Yes Yes Yes Yes Yes Yes No Yes No Yes Unknown Yes [Note 1] Unknown Unknown Yes
Bedework[24] Apache Java Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Yes Unknown Unknown Yes Yes Unknown Unknown Yes Yes Yes Unknown Unknown Unknown Unknown Unknown
Calendar and Contacts Server[25] Apache Python Yes Yes Yes Yes Yes No Unknown No Yes Yes Yes Yes Yes Yes Unknown Yes Yes Yes Unknown Unknown Unknown Unknown Unknown
Calypso[26] GNU GPL Python Yes Yes Yes No Unknown No Unknown No Yes Yes No Yes Yes Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
Cyrus IMAP[27] BSD C Yes Yes Yes Yes Yes No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
DAViCal[28][29] GNU GPL PHP Yes [Note 1] Yes Yes Yes Yes Yes Unknown Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Unknown Yes [Note 1] Unknown Yes Yes
DavMail[30] GNU GPL Java Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
Fennel[31] GNU GPLv3 JavaScript Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
Group-Office[32] AGPL, proprietary PHP Yes [Note 1] Yes Yes Unknown Some Unknown Unknown Yes Yes Yes Yes Yes Unknown Yes Unknown Yes Unknown Unknown Unknown Yes [Note 1] Unknown Unknown Unknown
Horde Groupware GNU LGPL PHP Yes [Note 1] Yes Yes No Some No No Unknown Yes Yes Yes Yes Yes No No Yes No No No Yes [Note 1] No No No
Nextcloud[33] AGPL v3 PHP Yes [Note 1] Unknown Unknown Unknown Unknown Unknown Unknown Unknown Yes Unknown Unknown Unknown Unknown Unknown Unknown Yes Unknown Unknown Unknown Yes [Note 1] Unknown Unknown Unknown
Open Xchange GNU GPL, CC Java, JavaScript Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Yes Unknown Unknown Unknown Unknown Unknown Unknown Unknown
ownCloud[34] AGPL v3 PHP Yes [Note 1] Unknown Unknown Unknown Unknown Unknown Unknown Unknown Yes Unknown Unknown Unknown Unknown Unknown Unknown Yes Unknown Unknown Unknown Yes [Note 1] Unknown Unknown Unknown
Radicale[35] GNU GPL Python Yes Yes Some No Some No Unknown No Some Some Some No Some No Unknown Some Unknown No Unknown Unknown Unknown Unknown Unknown
SabreDAV[36] BSD PHP Yes [Note 1] Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes Yes Unknown Yes [Note 1] Unknown Yes Unknown
SOGo[37] GNU GPL Objective-C Yes Yes Unknown Unknown Some[38][39] Unknown Unknown Unknown Some[40][41] Unknown Unknown Some[42][43][44][45] Unknown Unknown Unknown Unknown Some[46] Unknown Unknown Unknown Unknown Unknown Unknown
Xandikos[47] GNU GPL Python Yes Yes Yes Some Some No No No Yes Yes Yes Yes No Yes Yes Yes Yes No Unknown Yes No No Unknown
Zarafa AGPL, proprietary PHP Yes [Note 1] Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Read only Unknown Unknown Unknown Yes [Note 1] Unknown Unknown Unknown
Zentyal[48] GNU GPL Perl Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
Meishi[49] BSD Ruby Yes Yes'basic' Someyes Someno Yesmuch of No Unknown No No Unknown Yes No No No Unknown Some Unknown No No Unknown No No Unknown
Zimbra GNU GPL Java Yes Yes Yes Yes Yes No Unknown No Yes Unknown Yes Yes Yes Yes Unknown Yes Unknown Yes Unknown Unknown Unknown Unknown Unknown
  1. 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 1.11 1.12 1.13 1.14 1.15 PHP-based servers rely on the underlying web server platform for the implementation of HTTP.

The table is missing Kopano, Kerio Connect and Scalix, which are mentioned here for completeness.


See also

References

  1. AgenDAV project home
  2. "Cadaver home". http://www.webdav.org/cadaver/. 
  3. "Main Page - ACal Wiki". Wiki.acal.me. 2013-04-01. http://wiki.acal.me/wiki/Main_Page. Retrieved 2015-12-23. 
  4. "gggard/AndroidCaldavSyncAdapater ¡ GitHub". Github.com. https://github.com/gggard/AndroidCaldavSyncAdapater. Retrieved 2015-12-23. 
  5. CalDavZAP
  6. CardDavMATE
  7. InfCloud (integrated version of CalDavZAP and CardDavMATE)
  8. Chandler Project
  9. DAVx⁵ website
  10. Tasks.org website
  11. jqCalDAV project home
  12. KCardDAV project home
  13. Lightning - Project Home
  14. CardBook source
  15. MineTime features
  16. Mulberry client configuration
  17. Outlook CalDav Synchronizer website
  18. pyCardDAV project home
  19. The Bat! - Features
  20. SOGo Overview
  21. ReminderFox project home
  22. "Baïkal". https://sabre.io/baikal/. Retrieved 2021-03-10. 
  23. Baïkal iCal export
  24. Bedework overview
  25. "Calendar and Contacts Server guiding standards". http://trac.calendarserver.org/wiki/docs-trunk. 
  26. Calypso
  27. Cyrus IMAP Features
  28. DAViCal RFC Compliance
  29. DAViCal ChangeLog
  30. DavMail project home
  31. Fennel on GitHub
  32. Group-Office website
  33. Nextcloud home
  34. ownCloud home
  35. "A Simple Calendar and Contact Server". http://radicale.org/. Retrieved 2015-11-20. 
  36. SabreDAV Supported RFC's
  37. SOGo Overview
  38. 0003283: (read-only) Addressbook reports DAV:all privilege
  39. 0004822: Calender advertises wrong ACL for shared address books
  40. 0001310: CaldDAV calendar-query returns events out of specified range
  41. 0003161: Blackbery 10 can't edit event that was posted by KOrganizer (CalDAV)
  42. 0001204: update the icalendar handling to rfc 5545
  43. 0004747: SOGo creates invalid GEO value on import
  44. 0003608: Cannot save/display multiple calendar alerts for one calendar event.
  45. 0002574: No colors selectable if ressource ID contains space character
  46. 0005163: no carddav RFC 6578 compliance
  47. "Git-Backed CalDAV/CardDAV server". http://xandikos.org/. Retrieved 2022-06-06. Xandikos
  48. "Zentyal Community Edition official Site". http://www.zentyal.org/. 
  49. "Meishi, A lightweight CardDAV server built on Rails 3; GitHub repository". https://github.com/inferiorhumanorgans/meishi.