Oficjalny SDK dla języka Rust
Wysokowydajny asynchroniczny crate z obsługą Tokio dla języka Rust.
Asynchroniczny crate stworzony z myślą o bezkompromisowej wydajności z wykorzystaniem Tokio i Reqwest (zero-cost abstractions).
Instalacja
TOML
[dependencies]smallpict = "1.2"tokio = { version = "1", features = ["full"] }Pełny przykład użycia
Rust
use smallpict::{Client, OptimizeOptions, Format};use std::fs;
#[tokio::main]async fn main() -> Result<(), Box<dyn std::error::Error>> { let client = Client::new( std::env::var("SMALLPICT_API_KEY")?, std::env::var("SMALLPICT_SECRET_KEY")?, );
let bytes = fs::read("photo.jpg")?;
let res = client.optimize(&bytes, "photo.jpg", OptimizeOptions { format: Format::Avif, quality: 80, ..Default::default() }).await?;
println!("Zoptymalizowany URL: {}", res.url); println!("Uzyskana oszczędność: {:.2}%", res.savings_percentage);
Ok(())}