Skip to content
This repository has been archived by the owner on Jun 17, 2022. It is now read-only.

xi/caldav-client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is a standalone CalDAV web client. It is based on fullcalendar and ical.js and inspired by CalDavZAP.

Installation

Run npm install and then copy everything (including the node_modules folder) to a server. You also need to set rootUrl in config.js to the URL of the principal who's calendars should be displayed. It must be on the same origin.

Note that this is only a client. You will also need a CalDAV server, e.g. baikal or radicale.

Features / Limitations

  • Supported
    • Displaying events in a calendar, including recurrence
    • Creating and deleting events
    • Changing the start and end of an event, either by dragging the event on the calendar or by using a form
    • Moving an event from one calendar to another
  • Not supported
    • Editing any other property of events, e.g. recurrence or alarms

Architecture

We have to work with two different structures: The one defined by CalDAV and the other one defined by fullcalendar.

In CalDAV there are calendars and events. In fullcalendar there are event sources and events.

Each CalDAV calendar maps to a fullcalendar event source. source.id is the URL of the CalDAV calendar.

Each CalDAV event maps to one or (for recurring events) more fullcalendar events. event.groupId is the URL of the CalDAV event. event.extendedProps.comp is the parsed ICS. event.extendedProps.offset is the offset in seconds from the first instance to this one.

About

standalone CalDAV web client

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published