1[workspace]
2resolver = "2"
3members = ["crates/*"]
4
5
6[workspace.package]
7edition = "2024"
8version = "0.9.4"
9authors = ["Orual <orual@nonbinary.computer>"]
10#repository = "https://github.com/rsform/jacquard"
11repository = "https://tangled.org/@nonbinary.computer/jacquard"
12keywords = ["atproto", "at", "bluesky", "api", "client"]
13categories = ["api-bindings", "web-programming::http-client"]
14readme = "README.md"
15exclude = [".direnv"]
16homepage = "https://tangled.org/@nonbinary.computer/jacquard"
17license = "MPL-2.0"
18
19description = "Simple and powerful AT Protocol client library for Rust"
20
21# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
22
23[workspace.dependencies]
24# CLI
25clap = { version = "4.5", features = ["derive"] }
26clap_complete = "4.5"
27clap_mangen = "0.2"
28
29# Serialization
30serde = { version = "1.0", features = ["derive"] }
31serde_json = "1.0"
32serde_with = "3.14"
33serde_html_form = "0.2"
34serde_ipld_dagcbor = "0.6"
35serde_repr = "0.1"
36facet = "0.6"
37facet-json = "0.6"
38cfg-if = "1.0"
39
40# Error handling
41miette = "7.6"
42thiserror = "2.0"
43
44# trait stuff
45trait-variant = "0.1.2"
46
47
48bon = "3.8.0"
49
50# Data types
51bytes = "1.10"
52smol_str = { version = "0.3", features = ["serde"] }
53url = { version = "2.5", features = ["serde"] }
54cid = { version = "0.11.1", features = ["serde", "std"] }
55ipld-core = { version = "0.4.2", features = ["serde"] }
56multihash = "0.19"
57dashmap = "6.1"
58mini-moka = "0.10"
59
60# Proc macros
61proc-macro2 = "1.0"
62quote = "1.0"
63syn = "2.0"
64heck = "0.5"
65itertools = "0.14"
66prettyplease = "0.2"
67
68# HTTP
69http = "1.3"
70reqwest = { version = "0.12", default-features = false }
71
72# Async and runtimes
73tokio = { version = "1", default-features = false }
74n0-future = "0.1"
75
76# Observability
77tracing = "0.1"
78
79# Encoding and crypto building blocks
80base64 = "0.22"
81percent-encoding = "2.3"
82urlencoding = "2.1.3"
83rand_core = "0.6"
84sha2 = "0.10"
85
86# Time
87chrono = "0.4"
88
89# Crypto curves and JOSE
90p256 = "0.13"
91jose-jwk = "0.1"
92
93# Text processing
94regex = { version = "1.12", default-features = false }
95webpage = { version = "2.0", default-features = false }