this package is deprecated. Please stop using this and instead use Mondanzo/node-curseforge

please read

Due to Overwolf taking over Curseforge. Bunch of parts from the api either won't work, don't show all mods or even outdated info for a mod. For now I highly recommend to use a different library, or use modrinth over Curseforge, (we all love us an Open-Source mod page instead of closed source). I'm not sure if I will continue working on this project or if it will be archived forever.

mc-curseforge-api Codacy Badge npm bundle size npm (tag)

Yeah a terrible package name but whatever.

This package should make dealing with the Minecraft Mods Curseforge API a lot easier. Just quickly require it and you're good to go!

Installation

Using yarn (which is obviously better)
yarn add mc-curseforge-api

Using npm
npm install mc-curseforge-api --save

Examples

Get a list of mods:

const curseforge = require("mc-curseforge-api");

curseforge.getMods().then((mods) => {
    console.log(mods);
});

Search for mods by a string:

curseforge.getMods({ searchFilter: "Vazkii_" }).then((mods) => {
    console.log(mods);
});

Get a list of mods for a specific minecraft version:

curseforge.getMods({ gameVersion: "1.12.2" }).then((mods) => {
    console.log(mods);
});

Use paging for getting mods:

curseforge.getMods({ index: 3, pageSize: 5 }).then((mods) => {
    console.log(mods);
});

See curseforge.getMods for more options.

Download the mod file for a mod:

mod.getFiles().then((files) => {
    files[0].download("./Mod.jar");
});

Get mod files for a specific minecraft version:

curseforge.getModFiles(225643).then((files) => {
    console.log(files);
});

See curseforge.getModFiles for more options.

Documentation

See the docs for more information here.
(Those got made with JSDoc and I have no clue how to make them look better.)