Search

Lib.rs

› Email
#jmap #contact #calendar

libjmap

JMAP client implementation

by Hugo

  • Install
  • API reference
  • Repository (git.sr.ht)

2 releases

Uses new Rust 2024

0.1.1 Oct 9, 2025
0.1.0 Oct 8, 2025

#301 in Email


Used in vstorage

ISC license

56KB
1K SLoC

libjmap

Docs | Source | Issues | Patches | Chat

Client library for JMAP, focusing on support for Calendars and Contacts.

This code works, but is of prototype quality—it will panic on many errors rather than properly return an error. All interfaces are currently subject to change.

Hacking

Tests currently run against a test server, which can be run using cyrus-docker-test-server, with:

docker run -it \
  -p 8080:8080 -p 8143:8143 -p 8110:8110 -p 8024:8024 -p 8001:8001 \
  cyrus-testserver

Tests mutate the server state and must be run serially to avoid state mismatches due to concurrent tests. Be sure to use cargo test -- --test-threads=1 (or simply make check).

Licence

Copyright 2025 Hugo Osvaldo Barrera
Licensed under the ISC
SPDX-License-Identifier: ISC

Dependencies

~3.5–5.5MB
~90K SLoC

  • http 1.0
  • http-body-util
  • hyper 1.0
  • log
  • serde+derive
  • serde_json
  • thiserror 2.0
  • tokio+sync
  • tower-service
  • dev hyper-rustls
  • dev hyper-util+client+client-legacy+http1
  • dev tower-http+auth
See also: jmap-client, libdav, melib, stalwart, missive, stalwart-cli, aws-sdk-ssmcontacts, aws-sdk-notificationscontacts, eventix, badi-date, geodate

Lib.rs is an unofficial list of Rust/Cargo crates, created by kornelski. It contains data from multiple sources, including heuristics, and manually curated data. Content of this page is not necessarily endorsed by the authors of the crate. This site is not affiliated with nor endorsed by the Rust Project. If something is missing or incorrect, please file a bug.