igdb 0.1.2

IGDB - Video Game Database Api
Documentation
use async_std::task;
use igdb::client::IGDBClient;
use igdb::media_quality::MediaQuality;

fn main() {
    femme::with_level(log::LevelFilter::Debug);

    task::block_on(async {
        use std::env;
        let client_id =
            env::var("IGDB_CLIENT_ID").expect("You nee to set the IGDB_CLIENT_ID variable");
        let token = env::var("IGDB_TOKEN").expect("You nee to set the IGDB_TOKEN variable");
        let igdb_client = IGDBClient::new(&client_id, &token);

        let games_client = igdb_client.games();
        let game = games_client
            .get_first_by_name("Borderlands 2")
            .await
            .unwrap();

        let platforms_client = igdb_client.platforms();
        let platform_logos_client = igdb_client.platform_logos();

        for p_id in game.platforms {
            let platform = platforms_client
                .get_first_by_id(p_id as usize)
                .await
                .unwrap();

            platform_logos_client
                .download_by_id(
                    platform.platform_logo,
                    format!("{}.png", platform.name),
                    MediaQuality::Original,
                )
                .await
                .unwrap();
        }
    })
}