curseforgeapi

Crates.iocurseforgeapi
lib.rscurseforgeapi
version1.0.3
created_at2025-12-07 13:04:10.057644+00
updated_at2025-12-22 18:53:32.715239+00
descriptionA complete Rust wrapper.
homepage
repositoryhttps://github.com/Hunam6/curseforgeapi
max_upload_size
id1971556
size77,856
Hunam (Elie TD) (Hunam6)

documentation

README

CurseForge logo

CurseForge API

A complete Rust wrapper.


API Key

You'll need a CurseForge API key to use this library, request one here.

Installation

cargo add curseforgeapi

Usage

Create a .env file in your project root:

CURSEFORGE_API_KEY='your-api-key-here'

Then use the client:

use curseforgeapi::CurseForge;
use curseforgeapi::definitions::SearchModsParams;

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    dotenvy::dotenv().ok();
    let api_key = std::env::var("CURSEFORGE_API_KEY")?;

    let cf = CurseForge::new(&api_key)?;

    // Search for Minecraft mods
    let mods = cf.search_mods(&SearchModsParams {
        game_id: 432, // Minecraft
        search_filter: Some("jei".to_string()),
        ..Default::default()
    }).await?;

    for m in mods.data {
        println!("{} - {} downloads", m.name, m.download_count);
    }

    Ok(())
}

Credit

License

MIT

Commit count: 0

cargo fmt