# kpx
High-level Rust client for the KeePassXC browser integration protocol. The crate mirrors the native messaging API that the official browser extensions speak and exposes a strongly typed, synchronous abstraction.
## Installation
```toml
[dependencies]
kpx = "0.1.0"
```
No optional features are exposed – every consumer gets the full transport, crypto, and serialization stack.
## Usage
```rust
use kpx::{KpxClient, LoginQuery};
fn main() -> Result<(), Box<dyn std::error::Error>> {
let mut client = KpxClient::connect()?;
let associations = client.associations().to_vec();
let query = LoginQuery::new("https://example.com", associations);
let logins = client.get_logins(&query)?;
println!("Entries: {:?}", logins.entries);
Ok(())
}
```
### Custom transports
You can supply your own transport by implementing the `Transport` trait and constructing `KeePassXcClient::new(custom_transport)`.
## License
Licensed under MIT – see the workspace `LICENSE` file for details.