cargo-features = ["codegen-backend"]
[package]
name = "v_exchanges"
version = "0.16.6"
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 = false
features = ["major", "data"]
rustdoc-args = ["--cfg", "docsrs", "--generate-link-to-definition"]
[package.metadata.cargo-machete]
ignored = ["derive-new", "color-eyre", "serde", "tokio", "v_utils"]
[features]
default = ["major", "data"]
full = ["major", "data", "mexc", "kucoin", "bitflyer", "coincheck"]
major = ["binance", "bybit"]
binance = ["v_exchanges_adapters/binance"]
bybit = ["v_exchanges_adapters/bybit"]
bitflyer = ["v_exchanges_adapters/bitflyer"]
coincheck = ["v_exchanges_adapters/coincheck"]
kucoin = ["v_exchanges_adapters/kucoin"]
mexc = ["v_exchanges_adapters/mexc"]
data = ["dep:reqwest"]
[dependencies]
async-trait.workspace = true
cfg-if.workspace = true
derive-new.workspace = true
derive_more.workspace = true
enum_dispatch = "0.3.13"
eyre.workspace = true
reqwest = { version = "^0.12.24", optional = true }
v_exchanges_adapters = { version = "^0.16.6", path = "../v_exchanges_adapters/", optional = true }
jiff.workspace = true
secrecy.workspace = true
serde.workspace = true
serde_json.workspace = true
serde_with.workspace = true
thiserror.workspace = true
tokio.workspace = true
tracing.workspace = true
v_utils.workspace = true
[dev-dependencies]
color-eyre = "^0.6.5"
insta.workspace = true
[[example]]
name = "test"
path = "../examples/test.rs"
[[example]]
name = "spelled_out_request"
path = "../examples/spelled_out_request.rs"
[[example]]
name = "ws"
path = "../examples/ws.rs"
[[example]]
name = "cli"
path = "../examples/cli.rs"
[[example]]
name = "data"
path = "../examples/data.rs"
[[example]]
name = "binance_market_perp"
required-features = ["binance"]
path = "../examples/binance/market_perp.rs"
[[example]]
name = "binance_market_spot"
required-features = ["binance"]
path = "../examples/binance/market_spot.rs"
[[example]]
name = "binance_orders"
required-features = ["binance"]
path = "../examples/binance/orders.rs"
[[example]]
name = "bybit_market"
required-features = ["bybit"]
path = "../examples/bybit/market.rs"
[[example]]
name = "bybit_ws"
required-features = ["bybit"]
path = "../examples/bybit/ws.rs"
[[example]]
name = "kucoin_market"
required-features = ["kucoin"]
path = "../examples/kucoin/market.rs"
[[example]]
name = "mexc"
required-features = ["mexc"]
path = "../examples/mexc.rs"
[[example]]
name = "healthcheck"
required-features = ["binance", "bybit", "kucoin", "mexc"]
path = "../examples/healthcheck.rs"