webpuppet 0.1.5-alpha

Web browser programmatic automation and control library for research, testing, and workflow automation
Documentation
[dependencies.aes-gcm]
version = "^0.10"

[dependencies.anyhow]
version = "^1.0"

[dependencies.async-trait]
version = "^0.1"

[dependencies.base64]
version = "^0.22"

[dependencies.chacha20poly1305]
version = "^0.10"

[dependencies.chromiumoxide]
default-features = false
features = ["tokio-runtime"]
optional = true
version = "^0.7"

[dependencies.chrono]
features = ["serde"]
version = "^0.4"

[dependencies.dirs]
version = "^5.0"

[dependencies.fantoccini]
optional = true
version = "^0.21"

[dependencies.fastrand]
version = "^2.3"

[dependencies.futures]
version = "^0.3"

[dependencies.humantime-serde]
version = "^1.1"

[dependencies.keyring]
optional = true
version = "^3.6"

[dependencies.parking_lot]
version = "^0.12"

[dependencies.pbkdf2]
version = "^0.12"

[dependencies.rand]
version = "^0.9"

[dependencies.regex]
version = "^1.12"

[dependencies.reqwest]
default-features = false
features = ["json", "cookies", "rustls-tls"]
version = "^0.12"

[dependencies.scraper]
version = "^0.25"

[dependencies.secrecy]
version = "^0.8"

[dependencies.serde]
features = ["derive"]
version = "^1.0"

[dependencies.serde_json]
version = "^1.0"

[dependencies.sha2]
version = "^0.10"

[dependencies.thiserror]
version = "^2.0"

[dependencies.tokio]
features = ["full"]
version = "^1.49"

[dependencies.toml]
version = "^0.8"

[dependencies.tracing]
version = "^0.1"

[dependencies.url]
version = "^2.5"

[dependencies.urlencoding]
version = "^2.1"

[dependencies.uuid]
features = ["v4"]
version = "^1.19"

[dev-dependencies.anyhow]
version = "^1.0"

[dev-dependencies.tempfile]
version = "^3.24"

[dev-dependencies.tokio-test]
version = "^0.4"

[dev-dependencies.tracing-subscriber]
version = "^0.3"

[[example]]
name = "research_runner"
path = "examples/research_runner.rs"
required-features = ["all-providers"]

[features]
all-providers = ["grok", "claude", "gemini", "chatgpt", "perplexity", "notebooklm", "kaggle"]
chatgpt = []
chromium = ["dep:chromiumoxide"]
claude = []
core-providers = ["grok", "claude", "gemini", "chatgpt"]
default = ["chromium", "all-providers"]
firefox = ["dep:fantoccini"]
gemini = []
grok = []
kaggle = []
notebooklm = []
perplexity = []
rustls-tls = ["reqwest/rustls-tls"]
search-providers = ["grok", "perplexity", "chatgpt"]
secrecy = []

[lib]
name = "webpuppet"
path = "src/lib.rs"

[package]
authors = ["Tyler Zervas <tz-dev@vectorweight.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["web-programming", "development-tools"]
description = "Web browser programmatic automation and control library for research, testing, and workflow automation"
documentation = "https://docs.rs/webpuppet"
edition = "2021"
keywords = ["browser-automation", "ai", "puppeteer", "web-scraping"]
license = "MIT"
name = "webpuppet"
readme = "README.md"
repository = "https://github.com/tzervas/webpuppet-rs"
rust-version = "1.75.0"
version = "0.1.5-alpha"

[[test]]
name = "integration"
path = "tests/integration.rs"