genius-rs

Crates.iogenius-rs
lib.rsgenius-rs
version0.5.0
sourcesrc
created_at2021-08-01 22:52:31.698465
updated_at2022-05-28 19:16:34.313064
descriptionRust library that allows interact with Genius API
homepage
repositoryhttps://github.com/alt-art/genius-rs
max_upload_size
id430174
size37,551
Pedro Mendes (alt-art)

documentation

README

Crates.io Crates.io (recent) Crates.io

genius_rs

Rust library that allows interact with Genius API.

Searching for a song

use genius_rs::Genius;

#[tokio::main]
async fn main() {
    let genius = Genius::new(dotenv::var("TOKEN").unwrap());
    let response = genius.search("Ariana Grande").await.unwrap();
    println!("{}", response[0].result.full_title);
}

Getting lyrics

use genius_rs::Genius;

#[tokio::main]
async fn main() {
    let genius = Genius::new(dotenv::var("TOKEN").unwrap());
    let response = genius.search("Sia").await.unwrap();
    let lyrics = genius.get_lyrics(&response[0].result.id).await.unwrap();
    for verse in lyrics {
        println!("{}", verse);
    }
}

Getting deeper information for a song by id

use genius_rs::Genius;

#[tokio::main]
async fn main() {
    let genius = Genius::new(dotenv::var("TOKEN").unwrap());
    let response = genius.search("Weeknd").await.unwrap();
    let song = genius.get_song(response[0].result.id, "plain").await.unwrap();
    println!("{}", song.media.unwrap()[0].url)
}
Commit count: 115

cargo fmt