Version0.10.3Verifiednot yet verifiedLicenseBSD-3-Clause

sigil-caldav

CalDAV calendar client library for Sigil

Report a bug or suggest a feature
Readme

sigil-caldav

A Sigil library for CalDAV calendaring (RFC 4791) and iCalendar parsing (RFC 5545). Works with Fastmail, Nextcloud, Radicale, and other CalDAV servers.

Features

  • Server discovery -- principal URL and calendar home set via WebDAV
  • Calendar operations -- list, find by name, create, delete
  • Event CRUD -- create, read, update, delete calendar events
  • Date range queries -- fetch events within a time window
  • Recurrence expansion -- DAILY, WEEKLY, MONTHLY RRULE support with exception handling
  • iCalendar parsing -- full VEVENT support including folded lines, attendees, timezones
  • iCalendar generation -- create valid iCalendar text from event structs
  • Timezone handling -- UTC and local timezone with DST-aware offset calculation
  • Authentication -- HTTP Basic or Bearer token

Usage

Add sigil-caldav as a dependency in your package.sgl:

(from-git url: "codeberg:sigil/sigil-caldav" package: "sigil-caldav")

Then connect and manage calendars:

(import (sigil caldav))

(define client (caldav-connect
                 url: "https://caldav.fastmail.com"
                 username: "[email protected]"
                 password: (getenv "CALDAV_PASSWORD")))

;; List calendars
(define calendars (caldav-calendars client))

;; Get events in a date range
(define events (caldav-events client (car calendars)
                 start: "20260301T000000Z"
                 end: "20260401T000000Z"))

;; Create an event
(caldav-event-create! client (car calendars)
  (ical-event summary: "Meeting"
              dtstart: "20260315T100000Z"
              dtend: "20260315T110000Z"))
Read the rest

Modules

ModuleDescription
(sigil caldav)Top-level re-exports
(sigil caldav client)WebDAV discovery, PROPFIND, REPORT, PUT, DELETE
(sigil caldav ical)iCalendar parsing, generation, datetime handling
(sigil caldav calendar)Calendar listing, creation, deletion
(sigil caldav event)Event CRUD with date range queries

Dependencies

  • sigil-stdlib
  • sigil-http
  • sigil-sxml
  • sigil-crypto

Building

sigil deps install
sigil build
sigil test

License

BSD-3-Clause

Clone

$ git clone https://codeberg.org/sigil/sigil-caldav

Releases

v0.10.3 — latest by version, released 14 Jul 2026

All releases — 6 tags in this repository.

Source

Browse the latest source

One page per file, and every line has a permalink.

Recent commitsAtom

The last 20 commits keep a page here. Everything older lives in the clone.