Tokidoki is a (WIP) carddav and caldav server.
Tokidoki relies on go-webdav for the protocol implementation. It provides the storage backend and authentication, both of which are easily pluggable.
It currently provides:
cd cmd/tokidoki && go build
Using the IMAP authentication backend and the filesystem storage backend (directory must exist), listening on port 8080 on all interfaces:
./tokidoki -addr ":8080" -auth.url imaps://imap.example.com:993 -storage.url file:///path/to/storage -debug
Tokidoki does not support HTTPS at this time, use a reverse TLS proxy if needed.
Only a single address book and calendar per user are supported at the moment, this is currently a limitation in go-webdav.
Tokidoki supports calendar and address book auto-discovery via
/.well-known/carddav respectively, as defined in
RFC 6764, section 6. Hence, most clients should be able to discover
resources by just pointing them at the server root.