[package]
name = "cctp-rs"
version = "3.3.0"
edition = "2021"
authors = ["Joseph Livesey <joseph@semiotic.ai>"]
categories = ["finance", "api-bindings"]
description = "Type-safe Rust SDK for Circle's Cross-Chain Transfer Protocol (CCTP) v1 and v2 — bridge USDC across 26+ EVM chains with fast transfer support."
homepage = "https://crates.io/crates/cctp-rs"
keywords = ["cctp", "usdc", "circle", "bridge", "alloy"]
license = "Apache-2.0"
readme = "README.md"
repository = "https://github.com/semiotic-ai/cctp-rs"

[dependencies]
alloy-chains = "0.2"
alloy-contract = { version = "2.0", default-features = false }
alloy-json-rpc = { version = "2.0", default-features = false }
alloy-network = { version = "2.0", default-features = false }
alloy-primitives = { version = "1.5", default-features = false, features = [
    "serde",
    "std",
    "rlp",
] }
alloy-provider = { version = "2.0", default-features = false, features = [
    "anvil-node",
    "reqwest",
] }
alloy-rpc-types = "2.0"
alloy-sol-types = { version = "1.5", features = ["json"] }
alloy-transport = { version = "2.0", default-features = false }
async-trait = "0.1"
bon = "3.9"
reqwest = { version = "0.13", features = ["json"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
thiserror = "2.0"
tokio = { version = "1", default-features = false, features = ["time"] }
tracing = "0.1"
url = "2.5"

[dev-dependencies]
alloy-signer-local = "2.0"
dotenvy = "0.15"
insta = "1.47"
rstest = "0.26"
tokio = { version = "1.52", features = [
    "test-util",
    "macros",
    "rt-multi-thread",
] }
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
