viewpoint_cdp/lib.rs
1//! Low-level Chrome `DevTools` Protocol implementation over WebSocket.
2//!
3//! This crate provides the foundational CDP transport layer for `Viewpoint`,
4//! including WebSocket connection management, message serialization, and
5//! CDP domain types.
6//!
7//! # Example
8//!
9//! ```no_run
10//! use viewpoint_cdp::{CdpConnection, protocol::target_domain::GetTargetsParams};
11//!
12//! # async fn example() -> Result<(), viewpoint_cdp::CdpError> {
13//! let conn = CdpConnection::connect("ws://localhost:9222/devtools/browser/...").await?;
14//!
15//! let result: viewpoint_cdp::protocol::target_domain::GetTargetsResult =
16//! conn.send_command("Target.getTargets", Some(GetTargetsParams::default()), None).await?;
17//!
18//! for target in result.target_infos {
19//! println!("Target: {} - {}", target.target_type, target.url);
20//! }
21//! # Ok(())
22//! # }
23//! ```
24
25pub mod connection;
26pub mod error;
27pub mod protocol;
28pub mod transport;
29
30pub use connection::CdpConnection;
31pub use error::CdpError;
32pub use transport::{CdpEvent, CdpMessage, CdpRequest, CdpResponse};