Skip to main content

browsing/
lib.rs

1//! Browsing: Web browser automation via Chrome DevTools Protocol
2//!
3//! This library provides standalone browser control via `Browser`, `Page`, `Element`.
4//! No AI or LLM services required.
5
6pub mod actor;
7pub mod agent;
8pub mod browser;
9pub mod config;
10pub mod dom;
11pub mod error;
12pub mod logging;
13pub mod metrics;
14pub mod observability;
15pub mod perception;
16pub mod tools;
17pub mod traits;
18pub mod utils;
19pub mod views;
20
21pub use error::{BrowsingError, Result};
22
23// Re-export core browser automation types
24pub use actor::{Element, Mouse, Page, ShadowElementInfo};
25pub use browser::{AuthManager, Browser, ConsoleManager, CookieManager, CoverageManager, DialogManager, DownloadManager, FileChooserManager, HarManager, NetworkInterceptor, PdfManager, PerformanceManager, PermissionsManager, ServiceWorkerManager, StorageManager, TouchManager, TracingManager, ViewportManager, WorkerManager};
26pub use browser::views::{AuthCredentials, ColorScheme, ConsoleLog, Cookie, CookieParam, CoverageRange, CoverageResult, DeviceMetrics, DevicePreset, DialogInfo, DialogType, DownloadInfo, DownloadState, FileChooserInfo, HarEntry, HarHeader, HarLog, HarRequest, HarResponse, InterceptPattern, InterceptedRequest, MediaFeature, MockResponse, PageMargins, PdfConfig, PerformanceMetrics, PermissionType, ServiceWorkerRegistration, ServiceWorkerVersion, TouchPoint, TraceConfig, TraceResult, ViewportConfig, VisionDeficiency, WorkerInfo};
27pub use browser::storage::StorageEntry;
28pub use config::Config;
29pub use traits::{BrowserClient, DOMProcessor};
30
31/// Initialize the library (sets up logging, etc.)
32pub fn init() {
33    logging::setup_logging();
34}