[package]
name = "rfheadless"
version = "0.1.0"
edition = "2021"
authors = ["RFox Contributors"]
description = "A headless browsing engine API for Rust"
license = "MIT OR Apache-2.0"
repository = "https://github.com/idiotstudios/rfheadless"
readme = "README.md"
documentation = "https://docs.rs/rfheadless"
keywords = ["browser", "headless", "automation", "cdp"]
categories = ["web-programming", "api-bindings"]
[[bin]]
name = "rfheadless"
path = "src/main.rs"
[features]
default = ["rfengine"]
cdp = ["headless_chrome"]
simple = ["reqwest", "scraper"]
rfengine = ["reqwest", "scraper", "boa_engine", "url"]
[dependencies]
anyhow = "1.0"
thiserror = "2.0"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
base64 = "0.21"
tokio = { version = "1.0", features = ["rt-multi-thread", "macros", "sync"] }
log = "0.4"
reqwest = { version = "0.11", optional = true, features = ["blocking", "rustls-tls"] }
scraper = { version = "0.13", optional = true }
boa_engine = { version = "0.20", optional = true }
url = { version = "2", optional = true }
headless_chrome = { git = "https://github.com/rust-headless-chrome/rust-headless-chrome", optional = true, version = "1.0.20" }
sha2 = "0.10"
hex = "0.4"
futures = "0.3"
clap = { version = "4.2", features = ["derive"] }
num_cpus = "1.17"
[dev-dependencies]
anyhow = "1.0"
tokio = { version = "1.0", features = ["full"] }
tiny_http = "0.12"
criterion = "0.4"
[[bench]]
name = "latency_runner"
harness = false
path = "benches/latency_runner.rs"