hypixel-sdk 0.2.1

Async client for the Hypixel Public API with typed models and SkyBlock helpers
Documentation
# hypixel

Asynchronous Rust client for the [Hypixel Public API](https://api.hypixel.net),
with a focus on SkyBlock.

```rust
use hypixel::HypixelClient;

#[tokio::main]
async fn main() -> hypixel::Result<()> {
    let client = HypixelClient::new("YOUR-API-KEY");

    let profiles = client.skyblock_profiles("UUID").await?;
    println!("{} profiles", profiles.len());

    // Keyless endpoints work without a key:
    let bazaar = HypixelClient::unauthenticated().skyblock_bazaar().await?;
    println!("{} bazaar products", bazaar.products.len());
    Ok(())
}
```

## Features

- Full v2 endpoint coverage: general, SkyBlock, and resources, plus
  `skyblock_auctions_all` for fetching the whole auction listing concurrently.
- Strongly-typed models, down to the SkyBlock member sections (skills,
  dungeons, slayers, pets, currencies, HOTM), with an `extra` catch-all on
  every object so responses keep deserializing as Hypixel evolves the API.
- Rate-limit state parsed from response headers ([`HypixelClient::rate_limit`]),
  with optional automatic retries and response caching on the builder.
- Helpers in [`util`]: leveling math for the SkyBlock curves (skills,
  catacombs and dungeon classes, slayers, pets, HOTM, profile level) with
  `member_summary` resolving a whole member at once; bazaar spreads and
  after-tax flip finding; lowest-BIN aggregation by name or decoded item id;
  networth estimates that count recombobulators, potato books, and
  enchantments; and (under the default `nbt` feature) base64+gzip NBT
  inventory decoding.
- Username and UUID lookups against the Mojang API in the `mojang` module.

## Feature flags

- `nbt` *(default)*: enables [`util::nbt`] and NBT-based networth extraction.

Disable with `default-features = false` if you do not need NBT decoding.

## License

MIT