| Crates.io | vstorage |
| lib.rs | vstorage |
| version | 0.5.0 |
| created_at | 2025-07-07 11:09:42.688058+00 |
| updated_at | 2026-01-10 11:48:41.369853+00 |
| description | Common API for various icalendar/vcard storages. |
| homepage | https://sr.ht/~whynothugo/pimsync/ |
| repository | https://git.sr.ht/~whynothugo/vstorage |
| max_upload_size | |
| id | 1741067 |
| size | 550,565 |
Docs | Source | Issues | Patches | Chat
Several storage implementations for iCalendar and vCard items with a common
API. This crate is part of the pimsync
project.
Documentation for this library can be generated with cargo doc. The
documentation for the stable releases is available at crates.io.
Special thanks to the NLnet foundation and the NGI Zero Entrust program of the European Commission, which helped secure funding for the work on pimsync and related projects such a this one.
Use Cyrus's test server for these tests:
docker run -it \
-p 8080:8080 -p 8143:8143 -p 8110:8110 -p 8024:8024 -p 8001:8001 \
cyrus-testserver
This runs both a JMAP and CardDAV server:
http://localhost:8080/jmaphttp://localhost:8080/dav/addressbookshttp://localhost:8080/dav/calendarsuser1, no password.Run tests via
cargo test --features jmap_test -- jmap_tests::
Manually interact with the test server via:
# Check JMAP session
curl -u user1: -H "Content-Type: application/json" \
-X GET http://localhost:8080/jmap/.well-known/jmap
# List CardDAV collections
curl -u user1: -X PROPFIND \
-H "Content-Type: text/xml" \
-H "Depth: 1" \
http://localhost:8080/dav/addressbooks/
Or use davcli for the latter.
Copyright 2023-2024 Hugo Osvaldo Barrera
Licensed under the EUPL-1.2
SPDX-License-Identifier: EUPL-1.2