| Crates.io | lastfm-edit |
| lib.rs | lastfm-edit |
| version | 4.0.3 |
| created_at | 2025-07-21 11:03:08.619437+00 |
| updated_at | 2025-08-08 01:13:21.406808+00 |
| description | Rust crate for programmatic access to Last.fm's scrobble editing functionality via web scraping |
| homepage | https://github.com/colonelpanic8/lastfm-edit |
| repository | https://github.com/colonelpanic8/lastfm-edit |
| max_upload_size | |
| id | 1761949 |
| size | 59,056,798 |
A Rust crate for programmatic access to Last.fm's scrobble editing functionality via web scraping.
📚 View API Documentation →
use lastfm_edit::{LastFmEditClient, LastFmEditClientImpl, AsyncPaginatedIterator, Result};
#[tokio::main]
async fn main() -> Result<()> {
let http_client = http_client::native::NativeClient::new();
let client = LastFmEditClientImpl::login_with_credentials(
Box::new(http_client),
"username",
"password"
).await?;
let mut recent_tracks = client.recent_tracks();
while let Some(track) = recent_tracks.next().await? {
println!("{} - {}", track.artist, track.name);
}
Ok(())
}
LastFmEditClient] - Main client trait (see trait docs for all methods and examples)LastFmEditClientImpl] - Concrete client implementationTrack], [Album] - Music metadata structuresAsyncPaginatedIterator] - Streaming paginated dataScrobbleEdit] - Track edit operationsLastFmError] - Error types[dependencies]
lastfm-edit = "4.0.1"
http-client = { version = "^6.6.3", package = "http-client-2", features = ["curl_client"] }
tokio = { version = "1.0", features = ["full"] }
MIT