A better Rust ATProto crate
1[workspace] 2resolver = "2" 3members = ["crates/*"] 4 5 6[workspace.package] 7edition = "2024" 8version = "0.8.0" 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" 36 37# Error handling 38miette = "7.6" 39thiserror = "2.0" 40 41# trait stuff 42trait-variant = "0.1.2" 43 44 45bon = "3.8.0" 46 47# Data types 48bytes = "1.10" 49smol_str = { version = "0.3", features = ["serde"] } 50url = { version = "2.5", features = ["serde"] } 51cid = { version = "0.11.1", features = ["serde", "std"] } 52ipld-core = { version = "0.4.2", features = ["serde"] } 53multihash = "0.19" 54dashmap = "6.1" 55moka = "0.12" 56 57# Proc macros 58proc-macro2 = "1.0" 59quote = "1.0" 60syn = "2.0" 61heck = "0.5" 62itertools = "0.14" 63prettyplease = "0.2" 64 65# HTTP 66http = "1.3" 67reqwest = { version = "0.12", default-features = false } 68 69# Async and runtimes 70tokio = { version = "1", default-features = false } 71n0-future = "0.1" 72 73# Observability 74tracing = "0.1" 75 76# Encoding and crypto building blocks 77base64 = "0.22" 78percent-encoding = "2.3" 79urlencoding = "2.1.3" 80rand_core = "0.6" 81sha2 = "0.10" 82 83# Time 84chrono = "0.4" 85 86# Crypto curves and JOSE 87p256 = "0.13" 88jose-jwk = "0.1" 89 90# Text processing 91regex = "1.11" 92webpage = { version = "2.0", default-features = false }