cargo-features = ["codegen-backend"]
[package]
name = "v_exchanges"
version = "0.5.0"
edition = "2024"
authors = ["negi-grass", "valeratrades"]
categories = ["api-bindings", "asynchronous"]
description = "Implementations of HTTP/HTTPS/WebSocket API methods for some crypto exchanges, using [crypto-botters](<https://github.com/negi-grass/crypto-botters>) framework"
documentation = "https://docs.rs/v_exchanges"
homepage = "https://github.com/valeratrades/v_exchanges"
keywords = ["client", "websocket", "asynchronous"]
license = "MIT"
readme = "README.md"
repository = "https://github.com/valeratrades/v_exchanges/tree/master/v_exchanges"
[package.metadata.docs.rs]
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[package.metadata.cargo-machete]
ignored = ["derive-new", "color-eyre", "serde", "tokio", "v_utils"]
[dependencies]
async-trait = "0.1.85"
chrono.workspace = true
derive-new.workspace = true
derive_more.workspace = true
enum_dispatch = "0.3.13"
env_logger = "0.11.5"
eyre = "0.6.12"
serde.workspace = true
serde_json.workspace = true
serde_plain.workspace = true
serde_with.workspace = true
thiserror.workspace = true
tokio.workspace = true
tracing.workspace = true
v_utils = { workspace = true }
v_exchanges_adapters = { version = "^0.5.0", path = "../v_exchanges_adapters/", optional = true }
reqwest = { version = "^0.12.12", optional = true }
insta.workspace = true
secrecy.workspace = true
[dev-dependencies]
color-eyre = "^0.6.3"
insta.workspace = true
[features]
default = ["major"]
full = ["major", "bitflyer", "coincheck"]
major = ["binance", "bybit", "mexc", "data"]
binance = ["v_exchanges_adapters/binance"]
bybit = ["v_exchanges_adapters/bybit"]
bitflyer = ["v_exchanges_adapters/bitflyer"]
coincheck = ["v_exchanges_adapters/coincheck"]
mexc = ["v_exchanges_adapters/mexc"]
data = ["dep:reqwest"]
[[example]]
name = "test"
path = "../examples/test.rs"
[[example]]
name = "binance_market_futures"
path = "../examples/binance/market_futures.rs"
[[example]]
name = "binance_market_spot"
path = "../examples/binance/market_spot.rs"
[[example]]
name = "bybit_market"
path = "../examples/bybit/market.rs"
[[example]]
name = "mexc"
path = "../examples/mexc.rs"
[[example]]
name = "data"
path = "../examples/data.rs"