Skip to main content

Pythonic, modular, CurseForge API

Reason this release was yanked:

Had old project name

Project description

capy

A modular API for interacting with CurseForge.

Documentation Status

Disclaimer

capy is a work in progress!

Use this library at your own risk! We will be complete with docs soon.

Introduction

CurseForge Api Python(or capy for short) allows you to interact with CurseForge addons and files in a simply, easy to use way.

Our goal is to be modular and heavily customizable for developers who have very specific use cases, while also being simple and intuitive for developers who want something that 'just works'.

We support getting information on all games, addons, categories, files, and so much more! We also offer easy to use methods for downloading said files.

Example

from capy import CurseClient  # Import the CurseClient

GAME_ID = 432  # ID of the game you want to fetch, in this case Minecraft

# Create the CurseClient:

curse = CurseClient()

# Get the game info:

game = curse.game(GAME_ID)

# Print the name of the game:

print(game.name)

Features

Here, we will give brief examples of capy features. For more information, you should check out our documentation!

Modular Design

Each operation is managed by a component called a 'handler'. Handlers are simply classes that get information and process it. This information can be from any location, and it can be retrieved in many different ways.

The only limit is your imagination!

Our modular method allows for functionality to be swapped and mixed around, allowing for automated and easier customization compared to sub-classing.

Have a look at the documentation on handler development here!

Curse Instances

As stated earlier, curse data can come from any location, which can be retired in many different ways. Because of this, the developer would have to check and work with data in many different formats and in many different makeups.

Not ideal!

capy offers curse instances that normalize data, and offer a container for data to be kept in. This ensures that no matter what, the developer will be working with data in the same way, regardless of how or where we got the data from.

Curse Instances have plenty of other nifty features for easing your development, so be sure to check out their documentation!

Wrappers

Wrappers ease the process of interacting with certain games and projects on CurseForge. They do this by keeping track of relevant information, such as game and category ID's, so you as the developer do not have to.

For example, the 'MinecraftWrapper' eases the process of getting information on Minecraft projects and addons. We hope to implement more wrappers for more games at a later date.

Again, have a look at our documentation for more info!

Installation

You can install capy via pip:

$ pip install mctools

For more information on installing capy, check out the installation section in our documentation.

Documentation

As stated many times before, we have an extensive documentation. It contains tutorials, the API reference, and best practice recommendations.

I'm sure you know this already, but the documentation can be found here:

https://capy.readthedocs.io/en/latest/index.html

Be sure to check out the capy PyPi page for more information

Contributing

Pull requests are welcome and encouraged :) ! If you want to see a feature in capy, or have a fix for a bug you came across, then a PR will be the fastest way to to get you change included in capy.

I also accept comments and feedback at my email address listed under my GitHub account.

Changelog

1.0.0

Initial Commit

Special Thanks

Sir Quinn - Documentation work

Conclusion

capy offers a pythonic, intuitive way to interact with CurseForge projects! We offer high levels of customizability, while at the same time being easy to use.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cursepy-1.0.0.tar.gz (17.5 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page