[package]
name = "fbi-proxy"
version = "1.17.0"
edition = "2024"
description = "A fast and flexible proxy server for intercepting and modifying HTTP/HTTPS requests"
license = "MIT"
repository = "https://github.com/snomiao/fbi-proxy"
homepage = "https://github.com/snomiao/fbi-proxy"
documentation = "https://github.com/snomiao/fbi-proxy"
keywords = ["proxy", "http", "https", "intercept", "network"]
categories = ["network-programming", "web-programming"]

[lib]
name = "fbi_proxy"
path = "./rs/lib.rs"

[[bin]]
name = "fbi-proxy"
path = "./rs/fbi-proxy.rs"

[dependencies]
# Using simpler dependencies that build reliably on Windows
hyper = { version = "1.7", features = ["http1", "client", "server"] }
hyper-util = { version = "0.1", features = ["client-legacy", "server", "tokio", "http1"] }
hyper-rustls = { version = "0.27", default-features = false, features = ["http1", "ring", "webpki-tokio", "webpki-roots"] }
http-body-util = "0.1"
hyper-tungstenite = "0.18"
tokio = { version = "1.47", features = ["rt-multi-thread", "macros", "net", "io-util"] }
tokio-tungstenite = { version = "0.27", features = ["rustls-tls-webpki-roots"] }
futures-util = "0.3"
regex = "1.11"
env_logger = "0.11"
log = "0.4"
clap = { version = "4.5", features = ["derive", "env"] }
tower = { version = "0.5", features = ["util"] }
serde = { version = "1.0", features = ["derive"] }
serde_yaml = "0.9"
serde_json = "1.0"
arc-swap = "1.7"
notify = { version = "8", default-features = false, features = ["macos_fsevent"] }
rcgen = { version = "0.14.8", default-features = false, features = ["crypto", "pem", "ring"] }
tokio-rustls = { version = "0.26.4", default-features = false, features = ["logging", "tls12", "ring"] }
rustls-pemfile = "2.2.0"
time = { version = "0.3.47", default-features = false }
