[package]
edition = "2024"
rust-version = "1.85"
name = "perpcity-sdk"
version = "0.1.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Rust SDK for the PerpCity perpetual futures protocol on Base L2"
homepage = "https://docs.perp.city"
documentation = "https://docs.rs/perpcity-sdk"
readme = "README.md"
keywords = [
"perpetuals",
"defi",
"trading",
"ethereum",
"uniswap",
]
categories = [
"api-bindings",
"cryptography::cryptocurrencies",
"finance",
]
license = "MIT"
repository = "https://github.com/StrobeLabs/perpcity-rust-sdk"
[lib]
name = "perpcity_sdk"
path = "src/lib.rs"
[[example]]
name = "hft_bot"
path = "examples/hft_bot.rs"
[[example]]
name = "market_maker"
path = "examples/market_maker.rs"
[[example]]
name = "open_maker"
path = "examples/open_maker.rs"
[[example]]
name = "open_position"
path = "examples/open_position.rs"
[[example]]
name = "quickstart"
path = "examples/quickstart.rs"
[[example]]
name = "race"
path = "examples/race.rs"
[[test]]
name = "anvil_fork"
path = "tests/anvil_fork.rs"
[[bench]]
name = "hft_bench"
path = "benches/hft_bench.rs"
harness = false
[[bench]]
name = "math_bench"
path = "benches/math_bench.rs"
harness = false
[[bench]]
name = "transport_bench"
path = "benches/transport_bench.rs"
harness = false
[dependencies.alloy]
version = "1"
features = [
"full",
"sol-types",
"json-rpc",
"rpc-client",
]
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = ["full"]
[dependencies.tokio-stream]
version = "0.1"
[dependencies.tower]
version = "0.5"
[dependencies.url]
version = "2"
[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]
[dev-dependencies.dotenvy]
version = "0.15"
[dev-dependencies.reqwest]
version = "0.12"
features = ["json"]
[dev-dependencies.tokio]
version = "1"
features = [
"full",
"test-util",
]
[profile.bench]
debug = 2
[profile.release]
lto = "fat"
codegen-units = 1
panic = "abort"
strip = "symbols"