Skip to content

A python library to easily interact with the hypixel-api (initially sky block focused).

License

Notifications You must be signed in to change notification settings

Feromond/hypixel-api-lib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Hypixel-Api-Lib

A Python library for interacting with the Hypixel SkyBlock API.
Explore the docs »

Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Directory Information
  3. Built With
  4. Getting Started
  5. Usage
  6. Roadmap
  7. Contact

About The Project

hypixel-api-lib is a Python library that provides an easy-to-use interface for interacting with the Hypixel SkyBlock API. It simplifies the process of fetching and processing data from the API, allowing developers to focus on building applications and tools for the Hypixel SkyBlock community.

The library includes components for accessing player profiles, game statistics, items, skills, and events like the current Bingo event. It handles API requests, data parsing, and provides convenient classes and methods to work with the data.

Our goal with hypixel-api-lib is to create a comprehensive and efficient library for developers to build rich applications, bots, or analytics tools related to Hypixel SkyBlock.

(back to top)

Directory Information

hypixel_api_lib/

hypixel_api_lib/
├── __init__.py
├── Elections.py
├── Collections.py
├── Items.py
├── Skills.py
└── etc.... (more in-progress)

This is the core of the library, containing all the modules and packages that implement the API interactions and data models.

(back to top)

tests/

tests/
├── test_bingo.py
├── test_items.py
├── test_skills.py
└── ... etc ...

This directory contains all the unit tests for the library modules, ensuring code quality and correctness. Each test file corresponds to a module in the library.

(back to top)

examples/

examples/
├── bingo_example.py
├── items_example.py
├── skills_example.py
└── ... etc ...

This directory contains all the example code for this library. Each component has some sample code included that demonstrates how it could be used and some generate structure. Still largely a work in progress.

(back to top)

Root Files

.
├── LICENSE            # None set yet
├── README.md          # This file
├── .gitignore         # Files to ignore during our git process
├── .env               # (Will be gitignored) File to store environment vairables such as API keys for examples.
├── Makefile           # Commands for building, initializing, and other tasks
├── requirements.txt   # Lists the Python package dependencies
├── setup.py           # Setup script for packaging and distribution
├── examples/
├── hypixel_api_lib/
└── tests/

The root directory includes important files for building and managing the project.

  • Makefile: Simplifies common tasks such as building the package or installing requirements.

  • requirements.txt: Specifies the required Python packages.

  • setup.py: Used for packaging and distributing the library.

  • LICENSE: Contains the license information for the project.

  • README.md: Provides an overview and documentation of the project.

(back to top)

Built With

(back to top)

Getting Started

To get a local copy up and running, follow these simple steps.

Prerequisites

Python 3.12 or higher

Git (for cloning the repository)

Installation

  1. Clone the repository

    git clone https://github.com/Feromond/hypixel-api-lib.git
    cd hypixel-api-lib
  2. Install the required packages and setup venv

    make init
  3. Install the library

    In editable mode:

    make build_local

    (back to top)

Usage

Here we will describe how to use Hypixel-Api-Lib, including examples of how to import and utilize the library's functions in your own projects.

Fetching the Current Bingo Event

from hypixel_api_lib import BingoEvents

# Initialize the BingoEvents manager
bingo_events = BingoEvents()

# Get the current bingo event
current_event = bingo_events.get_current_event()

# Print event details
print(f"Bingo Event: {current_event.name} (ID: {current_event.id})")
print(f"Modifier: {current_event.modifier}")

Retrieving Item Information

from hypixel_api_lib import Items

# Initialize the Items manager
items = Items()

# Get item details by item ID
item_id = 'ASPECT_OF_THE_END'
item = items.get_item_by_id(item_id)

# Print item information
print(f"Item Name: {item.name}")
print(f"Description: {item.get_clean_lore()}")

For more examples and usage instructions, please refer to the documentation or check out the examples/ folder for more full code examples

Roadmap

  • Set up project structure and initial modules
  • Implement core components (Bingo, Items, Skills, Profiles etc...)
  • Write unit tests for core modules
  • Expand documentation with examples and tutorials
  • Publish package to PyPI
  • Add support for additional API endpoints outside skyblock
  • Improve existing code to support future developer experiences

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contact

Jacob Mish - Portfolio - LinkedIn - [email protected]

Desmond O'Brien- LinkedIn - [email protected]

Project Link: https://github.com/Feromond/hypixel-api-lib

(back to top)

About

A python library to easily interact with the hypixel-api (initially sky block focused).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published