This is an automated archive made by the Lemmit Bot.
The original was posted on /r/rust by /u/StalwartLabs on 2025-05-26 12:56:39+00:00.
Hi,
For those unfamiliar with the project, Stalwart is a mail server written in Rust that implements modern email standards like JMAP (in addition to IMAP, SMTP, etc.). With the release of version 0.12, Stalwart now extends beyond mail to support collaboration features. It includes built-in support for CalDAV (calendars), CardDAV (contacts), and WebDAV (for file storage), allowing it to function as a complete backend for personal or organizational data. JMAP support for calendars, contacts, and file storage is currently under development and will be released in the coming months. All functionality is implemented in Rust and available under the AGPL-3.0 license.
As part of this work, we’ve also published a new crate: calcard. It provides parsing and serialization of iCalendar (.ics) and vCard (.vcf) data in Rust. The library has been tested with hundreds of real-world calendar and contact files and has undergone fuzz testing for robustness. It is already being used in production as part of Stalwart’s DAV implementation.
While the crate is not yet fully documented, I plan to complete the documentation soon, along with support for JSCalendar and JSContact, the JSON-based formats used by the JMAP specification. The crate is MIT/Apache-2.0 licensed, and contributions are welcome.
Stalwart is available at https://github.com/stalwartlabs/stalwart/
and the calcard crate at https://github.com/stalwartlabs/calcard