browser-protocol 0.1.0

Generated Rust types and commands for the Chrome DevTools Protocol (browser-protocol)
Documentation

browser-protocol

Crates.io Documentation License: MIT

A high-performance, fully type-safe Rust client for the Chrome DevTools Protocol (CDP), automatically generated from the official protocol definitions.

🚀 Features

  • Full Coverage: Includes types, commands, and events for all CDP domains.
  • Type Safety: Leverage Rust's type system to avoid runtime protocol errors.
  • Async Ready: Designed to work seamlessly with tokio and serde.
  • Zero Warnings: The crate and its documentation are built to be perfectly clean.
  • Documentation: All protocol descriptions are included as Rustdoc comments.

📦 Installation

Add this to your Cargo.toml:

[dependencies]

browser-protocol = "0.1.0"

serde = { version = "1.0", features = ["derive"] }

serde_json = "1.0"

🛠 Usage Example

use browser-protocol::dom::GetDocumentParams;
use browser-protocol::page::NavigateParams;

fn main() {
    // Example: Create a navigation command
    let nav = NavigateParams {
        url: "https://www.rust-lang.org".to_string(),
        ..Default::default()
    };
    
    println!("Request: {:?}", serde_json::to_string(&nav).unwrap());
}

🏗 How it was built

This crate is automatically generated using a custom Python script that parses the browser_protocol.json and produces idiomatic Rust modules.

⚖ License

Distributed under the MIT License. See LICENSE for more information.


Disclaimer: This is an automatically generated project. Always check the official CDP documentation for the latest protocol changes.