[package]
name = "cryptopay"
version = "0.1.0"
edition = "2021"
authors = ["GrandpaEJ <None>"]
description = "A comprehensive Rust library for BscScan API integration and payment verification on Binance Smart Chain"
license = "MIT OR Apache-2.0"
repository = "https://github.com/GrandpaEJ/cryptopay"
keywords = ["bsc", "binance", "blockchain", "payment", "crypto"]
categories = ["api-bindings", "cryptography::cryptocurrencies"]
[dependencies]
tokio = { version = "1.35", features = ["full"] }
reqwest = { version = "0.11", features = ["json"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
thiserror = "1.0"
anyhow = "1.0"
governor = "0.6"
nonzero_ext = "0.3"
moka = { version = "0.12", features = ["future"] }
rust_decimal = { version = "1.33", features = ["serde"] }
async-trait = "0.1"
tracing = "0.1"
url = "2.5"
chrono = { version = "0.4", features = ["serde"] }
sqlx = { version = "0.7", features = ["runtime-tokio", "postgres", "chrono", "uuid", "json"], optional = true }
sqlx-sqlite = { package = "sqlx", version = "0.7", features = ["runtime-tokio", "sqlite", "chrono", "uuid", "json"], optional = true }
uuid = { version = "1.6", features = ["v4", "serde"] }
[dev-dependencies]
tokio-test = "0.4"
mockito = "1.2"
wiremock = "0.6"
dotenv = "0.15.0"
[features]
default = []
postgres-storage = ["sqlx"]
sqlite-storage = ["sqlx-sqlite"]
redis-cache = []
[[example]]
name = "basic_payment"
path = "examples/basic_payment.rs"
[[example]]
name = "token_payment"
path = "examples/token_payment.rs"
[[example]]
name = "payment_monitor"
path = "examples/payment_monitor.rs"
[[example]]
name = "with_storage"
path = "examples/with_storage.rs"
required-features = ["postgres-storage"]