This fixes the request that creates the address book returning an error even though it was successfully created and read. |
||
|---|---|---|
| auth | ||
| cmd/tokidoki | ||
| debug | ||
| storage | ||
| .build.yml | ||
| go.mod | ||
| go.sum | ||
| LICENSE | ||
| README.md | ||
tokidoki
Tokidoki is a (WIP) carddav and caldav server.
Architecture
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:
Authentication:
- IMAP (working)
- PAM (working, enabled via the
pambuild tag)
Storage:
- Filesystem (working)
- PostgreSQL (planned)
Building
cd cmd/tokidoki && go build
Running
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.
Usage
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/caldav and /.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.