[package] name = "proxyfor" version = "0.4.0" edition = "2021" authors = ["sigoden "] description = "A proxy CLI for capturing HTTP(S) & WS(S) Traffic." license = "MIT OR Apache-2.0" homepage = "https://github.com/sigoden/proxyfor" repository = "https://github.com/sigoden/proxyfor" categories = ["command-line-utilities"] keywords = ["proxy", "cli", "http", "websocket", "tui"] [dependencies] anyhow = "1.0" async-compression = { version = "0.4.6", features = ["brotli", "gzip", "zstd", "deflate", "tokio"] } base64 = "0.22.0" bytes = "1.5" clap = { version = "4.5.1", features = ["derive"] } cookie = "0.18.0" dirs = "5.0.1" fancy-regex = "0.13.0" futures-util = "0.3.30" http = "1.1.0" http-body-util = "0.1" hyper = { version = "1.0", features = ["full"] } hyper-rustls = { version = "0.27.3", default-features = false, features = ["webpki-roots", "webpki-tokio", "ring", "http1", "http2", "tls12"] } hyper-util = { version = "0.1", features = ["server-auto", "client-legacy"] } hyper-tungstenite = "0.15.0" indexmap = { version = "2.2.5", features = ["serde"] } moka = { version = "0.12.5", features = ["future"] } pin-project-lite = "0.2.13" rand = "0.8.5" rcgen = { version = "0.13.0", default-features = false, features = ["x509-parser", "pem", "ring"] } rsa = "0.9.6" rustls-pemfile = "2.0.0" serde = { version = "1.0.197", features = ["derive"] } serde_json = { version = "1.0.114", features = ["preserve_order"] } time = "0.3.34" tokio = { version = "1", features = ["rt-multi-thread", "net", "macros", "fs", "io-util", "signal"]} tokio-graceful = "0.2.2" tokio-util = { version = "0.7", features = ["io-util", "compat"] } tokio-rustls = { version = "0.26.0", default-features = false, features = ["ring", "tls12", "logging"] } tokio-stream = { version = "0.1.14", default-features = false, features = ["sync"] } tokio-tungstenite = { version = "0.24.0", features = ["rustls", "rustls-tls-webpki-roots"] } url = "2.5.0" crossterm = "0.28.1" ratatui = { version = "0.28.1", features = ["unstable-rendered-line-info"] } unicode-width = "0.2.0" log = "0.4.22" simplelog = "0.12.2" shell-words = "1.1.0" tui-input = "0.10.1" [target.'cfg(target_os = "linux")'.dependencies] arboard = { version = "3.3.0", default-features = false, features = ["wayland-data-control"] } [target.'cfg(not(any(target_os = "linux", target_os = "android", target_os = "emscripten")))'.dependencies] arboard = { version = "3.3.0", default-features = false } [dev-dependencies] async-compression = { version = "0.4.12", features = ["gzip", "tokio"] } async-http-proxy = { version = "1.2.5", features = ["runtime-tokio"] } insta = "1.36.1" pretty_assertions = "1.4.0" reqwest = { version = "0.12.2", features = ["rustls-tls", "stream"], default-features = false } [profile.release] lto = true strip = true opt-level = "z"