Skip to main content

Curseforge API

This is a no-compromise CurseForge API wrapper for python. It is a re-write of cursepy which is maintained but not actively developed. This project is a complete re-write of the original project, with a focus on simplicity and ease of use.

This project is still in development, and is not yet ready for production use. It also speeds up the process by using disk caching, It will cache the response from the API and will only make a new request if the request is not cached.

This, of course can be disabled by setting the cache to False.

Features

  • Simple and easy to use
  • Caches responses from the API to disk for faster response times
  • Allows direct access to the API via the fetch method
  • Allows exporting of the objects to DICT, JSON, or YAML
  • Can directly parse a manifest file from a curseforge modpack

Installation

pip install curseforge

Usage

from curseforge import CurseClient

client = CurseClient("API-KEY", cache=True)

minecraft = client.game(432) # 432 is the ID of Minecraft

# or we can list all the games
games = client.games()

for game in games:
    print(game.name)

# The search is up to the user to implement, this is just a wrapper

# We can also get the latest files for a project

JourneyMap = client.mod(2238) # 2238 is the ID of JourneyMap

for file in JourneyMap.files:
    print(file.name)

TODO

  • Implement the export methods
  • Implement the cache
  • Implement the fetch method
  • Deal with the download URL being a null value
  • Implement the search method
  • Wrap the ENTIRE API
  • Rename the classes so they have a Curse prefix

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

MIT

Metadata

Release files for curseforge 1.6.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for curseforge 1.6.1
File Size Uploaded
curseforge-1.6.1.tar.gz 9.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for curseforge 1.6.1
File Interpreter ABI Platform
curseforge-1.6.1-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 21.4 kB

Release files / curseforge-1.6.1.tar.gz

Download URL curseforge-1.6.1.tar.gz
Size 9.9 kB
Tags Source
SHA-256 checksum
How to use checksums
a33a17e45faf9abdfcabd255ea1e3cfc4ec972e4396cfccd70d57c3aec25eb2c
BLAKE2b-256 checksum
How to use checksums
efed812042c0af9840000a43c9846835cbafc8a6342bb6d9c9e238881d641015
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.10.13

Release files / curseforge-1.6.1-py2.py3-none-any.whl

Download URL curseforge-1.6.1-py2.py3-none-any.whl
Size 11.5 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
88fbc212c08a27b3d5952d6b739d9d49a2a610b676f0dbed9be0ca557b75800f
BLAKE2b-256 checksum
How to use checksums
b113a12123da4b5f03520251b03a093606e1169f9c2bee92441eeb91728ac19a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.10.13

Release history Release notifications | RSS feed

This release

1.6.1 This release

2 release files

1.6.0

2 release files

1.5.5

2 release files

1.5.4

2 release files

1.5.3

2 release files

1.5.2

2 release files

1.5.1

2 release files

1.5.0

2 release files

1.0.0

2 release files

0.0.3

2 release files

0.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page