GitVerse Rust SDK
Rust клиент для GitVerse API.

Установка
Добавьте в Cargo.toml:
[dependencies]
gitverse-sdk = "1"
tokio = { version = "1", features = ["macros", "rt-multi-thread"] }
Быстрый старт
use gitverse_sdk::{Client, ClientConfig};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = Client::new(ClientConfig {
token: "your-token".to_string(),
..Default::default()
})?;
let user = client.get_authenticated().await?;
println!("Hello, {}!", user.login.as_deref().unwrap_or("(unknown)"));
let repo = client.get("owner", "repo").await?;
println!("Repo: {} ({} stars)", repo.full_name, repo.stars_count);
Ok(())
}
Возможности
- Полное покрытие GitVerse API
- Async/await HTTP клиент на базе reqwest
- Автоматическая обработка Rate Limits
- Версионирование API с предупреждениями об устаревании
- Строго типизированные структуры с serde
- Идиоматичная обработка ошибок
Обработка ошибок
use gitverse_sdk::errors::{self, Error};
match client.get_by_username("nonexistent").await {
Ok(user) => println!("Found: {}", user.login.as_deref().unwrap_or("(unknown)")),
Err(ref e) if errors::is_not_found(e) => println!("User not found"),
Err(ref e) if errors::is_rate_limit_error(e) => println!("Rate limited"),
Err(e) => eprintln!("Error: {e}"),
}
Связанные проекты
Лицензия
MIT