The official Rust driver for Barreleye.
Add to Cargo.toml
:
bash
cargo add barreleye-client
Programmatically add a network so Barreleye can start indexing:
```rust use barreleye_client::{Barreleye, Blockchain, Env, Network};
async fn main() { // Define the client let url = "http://localhost:22775"; let apikey = Some("7f9e9182-122d-45e1-b4be-d73fc99e9bc9"); let client = Barreleye::new(url, apikey);
// Create a new network
let rpc_endpoint = "http://127.0.0.1:8545";
let network = Network::create(
&client,
"Ethereum", // name
"Ethereum", // tag
Env::Mainnet, // env
Blockchain::Evm, // blockchain
1, // chain id
12_000, // block time in milliseconds
vec![rpc_endpoint], // rpc endpoints
100, // rate limiter (requests per second)
)
.await;
println!("{:?}", network);
}
```
Get info about an address:
```rust use barreleye_client::{Barreleye, Error, Info};
async fn main() { // Define the client let url = "http://localhost:22775"; let apikey = None; let client = Barreleye::new(url, apikey);
// Get info about the address
match Info::get(&client, "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa").await {
Ok(info) => println!("{:?}", info),
Err(Error::Unavailable) => println!("Is Barreleye server running?"),
Err(e) => println!("Error: {e}"),
}
} ```
Check out more examples.