use ankit::AnkiClient;
#[tokio::main]
async fn main() -> ankit::Result<()> {
let client = AnkiClient::new();
let version = client.misc().version().await?;
println!("Connected to AnkiConnect version {}", version);
let decks = client.decks().names().await?;
println!("\nAvailable decks:");
for deck in &decks {
println!(" - {}", deck);
}
let deck_ids = client.decks().names_and_ids().await?;
println!("\nDeck IDs:");
for (name, id) in &deck_ids {
println!(" {} (ID: {})", name, id);
}
let models = client.models().names().await?;
println!("\nAvailable note types:");
for model in &models {
println!(" - {}", model);
}
if models.contains(&"Basic".to_string()) {
let fields = client.models().field_names("Basic").await?;
println!("\nFields in 'Basic' note type: {:?}", fields);
}
let reviewed_today = client.statistics().cards_reviewed_today().await?;
println!("\nCards reviewed today: {}", reviewed_today);
println!("\nDone!");
Ok(())
}