A better Rust ATProto crate
1[package]
2name = "jacquard-common"
3description = "Core AT Protocol types and utilities for Jacquard"
4edition.workspace = true
5version.workspace = true
6authors.workspace = true
7repository.workspace = true
8keywords.workspace = true
9categories.workspace = true
10readme.workspace = true
11exclude.workspace = true
12license.workspace = true
13
14
15[dependencies]
16bon.workspace = true
17base64.workspace = true
18bytes.workspace = true
19chrono.workspace = true
20cid = { version = "0.11.1", features = ["serde", "std"] }
21ipld-core = { version = "0.4.2", features = ["serde"] }
22langtag = { version = "0.4.0", features = ["serde"] }
23miette.workspace = true
24multibase = "0.9.1"
25multihash = "0.19.3"
26num-traits = "0.2.19"
27ouroboros = "0.18.5"
28rand = "0.9.2"
29regex = "1.11.3"
30serde.workspace = true
31serde_html_form.workspace = true
32serde_json.workspace = true
33serde_with.workspace = true
34smol_str.workspace = true
35thiserror.workspace = true
36url.workspace = true
37http.workspace = true
38async-trait.workspace = true
39tokio = { workspace = true, features = ["sync"] }
40reqwest = { workspace = true, optional = true, features = ["charset", "http2", "json", "system-proxy", "gzip", "rustls-tls"] }
41serde_ipld_dagcbor.workspace = true
42trait-variant.workspace = true
43
44[features]
45default = []
46crypto = []
47crypto-ed25519 = ["crypto", "dep:ed25519-dalek"]
48crypto-k256 = ["crypto", "dep:k256"]
49crypto-p256 = ["crypto", "dep:p256"]
50reqwest-client = ["dep:reqwest"]
51
52[dependencies.ed25519-dalek]
53version = "2"
54optional = true
55default-features = false
56features = ["pkcs8"]
57
58[dependencies.k256]
59version = "0.13"
60optional = true
61default-features = false
62features = ["arithmetic"]
63
64[dependencies.p256]
65workspace = true
66optional = true
67features = ["arithmetic"]
68
69[package.metadata.docs.rs]
70features = [ "crypto-k256", "crypto-k256", "crypto-p256"]