2 releases

0.0.2 Nov 28, 2023
0.0.1 Dec 27, 2022

#2860 in Magic Beans

Download history 7/week @ 2024-02-18 7/week @ 2024-02-25 1/week @ 2024-03-03 54/week @ 2024-03-31 38/week @ 2024-04-07 61/week @ 2024-04-14 10/week @ 2024-04-21

163 downloads per month

MIT/Apache

35KB
728 lines

duners

A convenience library for executing queries and recovering results from Dune Analytics API.

Installation and Usage

cargo add duners
use chrono::{DateTime, Utc};
use duners::{client::DuneClient, dateutil::datetime_from_str};
use serde::Deserialize;

// User must declare the expected query return fields and types!
#[derive(Deserialize, Debug, PartialEq)]
struct ResultStruct {
    text_field: String,
    number_field: f64,
    #[serde(deserialize_with = "datetime_from_str")]
    date_field: DateTime<Utc>,
    list_field: String,
}

#[tokio::main]
async fn main() -> Result<(), DuneRequestError> {
    let dune = DuneClient::from_env();
    let results = dune.refresh::<ResultStruct>(1215383, None, None).await?;
    println!("{:?}", results.get_rows());
    Ok(())
}

Dependencies

~8–20MB
~314K SLoC