@breezil/hypixel-parsers 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (179) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +235 -0
  3. package/dist/arcade.d.ts +560 -0
  4. package/dist/arcade.d.ts.map +1 -0
  5. package/dist/arcade.js +619 -0
  6. package/dist/arcade.js.map +1 -0
  7. package/dist/arenabrawl.d.ts +56 -0
  8. package/dist/arenabrawl.d.ts.map +1 -0
  9. package/dist/arenabrawl.js +107 -0
  10. package/dist/arenabrawl.js.map +1 -0
  11. package/dist/bedwars.d.ts +747 -0
  12. package/dist/bedwars.d.ts.map +1 -0
  13. package/dist/bedwars.js +844 -0
  14. package/dist/bedwars.js.map +1 -0
  15. package/dist/blitz.d.ts +105 -0
  16. package/dist/blitz.d.ts.map +1 -0
  17. package/dist/blitz.js +259 -0
  18. package/dist/blitz.js.map +1 -0
  19. package/dist/buildbattle.d.ts +54 -0
  20. package/dist/buildbattle.d.ts.map +1 -0
  21. package/dist/buildbattle.js +92 -0
  22. package/dist/buildbattle.js.map +1 -0
  23. package/dist/common.d.ts +11 -0
  24. package/dist/common.d.ts.map +1 -0
  25. package/dist/common.js +34 -0
  26. package/dist/common.js.map +1 -0
  27. package/dist/copsandcrims.d.ts +201 -0
  28. package/dist/copsandcrims.d.ts.map +1 -0
  29. package/dist/copsandcrims.js +269 -0
  30. package/dist/copsandcrims.js.map +1 -0
  31. package/dist/duels.d.ts +358 -0
  32. package/dist/duels.d.ts.map +1 -0
  33. package/dist/duels.js +570 -0
  34. package/dist/duels.js.map +1 -0
  35. package/dist/guild.d.ts +49 -0
  36. package/dist/guild.d.ts.map +1 -0
  37. package/dist/guild.js +95 -0
  38. package/dist/guild.js.map +1 -0
  39. package/dist/housing.d.ts +16 -0
  40. package/dist/housing.d.ts.map +1 -0
  41. package/dist/housing.js +34 -0
  42. package/dist/housing.js.map +1 -0
  43. package/dist/index.d.ts +50 -0
  44. package/dist/index.d.ts.map +1 -0
  45. package/dist/index.js +66 -0
  46. package/dist/index.js.map +1 -0
  47. package/dist/megawalls.d.ts +363 -0
  48. package/dist/megawalls.d.ts.map +1 -0
  49. package/dist/megawalls.js +684 -0
  50. package/dist/megawalls.js.map +1 -0
  51. package/dist/murdermystery.d.ts +293 -0
  52. package/dist/murdermystery.d.ts.map +1 -0
  53. package/dist/murdermystery.js +349 -0
  54. package/dist/murdermystery.js.map +1 -0
  55. package/dist/nbt.d.ts +37 -0
  56. package/dist/nbt.d.ts.map +1 -0
  57. package/dist/nbt.js +133 -0
  58. package/dist/nbt.js.map +1 -0
  59. package/dist/paintball.d.ts +52 -0
  60. package/dist/paintball.d.ts.map +1 -0
  61. package/dist/paintball.js +79 -0
  62. package/dist/paintball.js.map +1 -0
  63. package/dist/pit.d.ts +181 -0
  64. package/dist/pit.d.ts.map +1 -0
  65. package/dist/pit.js +262 -0
  66. package/dist/pit.js.map +1 -0
  67. package/dist/player.d.ts +338 -0
  68. package/dist/player.d.ts.map +1 -0
  69. package/dist/player.js +521 -0
  70. package/dist/player.js.map +1 -0
  71. package/dist/quakecraft.d.ts +75 -0
  72. package/dist/quakecraft.d.ts.map +1 -0
  73. package/dist/quakecraft.js +99 -0
  74. package/dist/quakecraft.js.map +1 -0
  75. package/dist/recentgames.d.ts +10 -0
  76. package/dist/recentgames.d.ts.map +1 -0
  77. package/dist/recentgames.js +27 -0
  78. package/dist/recentgames.js.map +1 -0
  79. package/dist/resources-achievements.d.ts +29 -0
  80. package/dist/resources-achievements.d.ts.map +1 -0
  81. package/dist/resources-achievements.js +67 -0
  82. package/dist/resources-achievements.js.map +1 -0
  83. package/dist/resources-challenges.d.ts +12 -0
  84. package/dist/resources-challenges.d.ts.map +1 -0
  85. package/dist/resources-challenges.js +36 -0
  86. package/dist/resources-challenges.js.map +1 -0
  87. package/dist/resources-games.d.ts +10 -0
  88. package/dist/resources-games.d.ts.map +1 -0
  89. package/dist/resources-games.js +28 -0
  90. package/dist/resources-games.js.map +1 -0
  91. package/dist/resources-guild-achievements.d.ts +23 -0
  92. package/dist/resources-guild-achievements.d.ts.map +1 -0
  93. package/dist/resources-guild-achievements.js +56 -0
  94. package/dist/resources-guild-achievements.js.map +1 -0
  95. package/dist/resources-quests.d.ts +23 -0
  96. package/dist/resources-quests.d.ts.map +1 -0
  97. package/dist/resources-quests.js +53 -0
  98. package/dist/resources-quests.js.map +1 -0
  99. package/dist/resources-vanity.d.ts +19 -0
  100. package/dist/resources-vanity.d.ts.map +1 -0
  101. package/dist/resources-vanity.js +33 -0
  102. package/dist/resources-vanity.js.map +1 -0
  103. package/dist/skyblock-auctions.d.ts +50 -0
  104. package/dist/skyblock-auctions.d.ts.map +1 -0
  105. package/dist/skyblock-auctions.js +90 -0
  106. package/dist/skyblock-auctions.js.map +1 -0
  107. package/dist/skyblock-bazaar.d.ts +25 -0
  108. package/dist/skyblock-bazaar.d.ts.map +1 -0
  109. package/dist/skyblock-bazaar.js +54 -0
  110. package/dist/skyblock-bazaar.js.map +1 -0
  111. package/dist/skyblock-bingo.d.ts +8 -0
  112. package/dist/skyblock-bingo.d.ts.map +1 -0
  113. package/dist/skyblock-bingo.js +19 -0
  114. package/dist/skyblock-bingo.js.map +1 -0
  115. package/dist/skyblock-items.d.ts +150 -0
  116. package/dist/skyblock-items.d.ts.map +1 -0
  117. package/dist/skyblock-items.js +247 -0
  118. package/dist/skyblock-items.js.map +1 -0
  119. package/dist/skyblock-misc.d.ts +91 -0
  120. package/dist/skyblock-misc.d.ts.map +1 -0
  121. package/dist/skyblock-misc.js +159 -0
  122. package/dist/skyblock-misc.js.map +1 -0
  123. package/dist/skyblock-museum.d.ts +24 -0
  124. package/dist/skyblock-museum.d.ts.map +1 -0
  125. package/dist/skyblock-museum.js +51 -0
  126. package/dist/skyblock-museum.js.map +1 -0
  127. package/dist/skyblock-news.d.ts +12 -0
  128. package/dist/skyblock-news.d.ts.map +1 -0
  129. package/dist/skyblock-news.js +25 -0
  130. package/dist/skyblock-news.js.map +1 -0
  131. package/dist/skyblock-resources.d.ts +94 -0
  132. package/dist/skyblock-resources.d.ts.map +1 -0
  133. package/dist/skyblock-resources.js +175 -0
  134. package/dist/skyblock-resources.js.map +1 -0
  135. package/dist/skyblock.d.ts +972 -0
  136. package/dist/skyblock.d.ts.map +1 -0
  137. package/dist/skyblock.js +1371 -0
  138. package/dist/skyblock.js.map +1 -0
  139. package/dist/skywars.d.ts +319 -0
  140. package/dist/skywars.d.ts.map +1 -0
  141. package/dist/skywars.js +611 -0
  142. package/dist/skywars.js.map +1 -0
  143. package/dist/smashheroes.d.ts +126 -0
  144. package/dist/smashheroes.d.ts.map +1 -0
  145. package/dist/smashheroes.js +206 -0
  146. package/dist/smashheroes.js.map +1 -0
  147. package/dist/static.d.ts +42 -0
  148. package/dist/static.d.ts.map +1 -0
  149. package/dist/static.js +106 -0
  150. package/dist/static.js.map +1 -0
  151. package/dist/status.d.ts +9 -0
  152. package/dist/status.d.ts.map +1 -0
  153. package/dist/status.js +18 -0
  154. package/dist/status.js.map +1 -0
  155. package/dist/tntgames.d.ts +189 -0
  156. package/dist/tntgames.d.ts.map +1 -0
  157. package/dist/tntgames.js +283 -0
  158. package/dist/tntgames.js.map +1 -0
  159. package/dist/turbokartracers.d.ts +85 -0
  160. package/dist/turbokartracers.d.ts.map +1 -0
  161. package/dist/turbokartracers.js +165 -0
  162. package/dist/turbokartracers.js.map +1 -0
  163. package/dist/uhc.d.ts +55 -0
  164. package/dist/uhc.d.ts.map +1 -0
  165. package/dist/uhc.js +94 -0
  166. package/dist/uhc.js.map +1 -0
  167. package/dist/vampirez.d.ts +75 -0
  168. package/dist/vampirez.d.ts.map +1 -0
  169. package/dist/vampirez.js +104 -0
  170. package/dist/vampirez.js.map +1 -0
  171. package/dist/walls.d.ts +96 -0
  172. package/dist/walls.d.ts.map +1 -0
  173. package/dist/walls.js +122 -0
  174. package/dist/walls.js.map +1 -0
  175. package/dist/warlords.d.ts +229 -0
  176. package/dist/warlords.d.ts.map +1 -0
  177. package/dist/warlords.js +309 -0
  178. package/dist/warlords.js.map +1 -0
  179. package/package.json +55 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Breezil
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,235 @@
1
+ <div align="center">
2
+
3
+ <img src="docs/logo.png" alt="Breezil-Hypixel-Parsers logo" width="120" />
4
+
5
+ # Breezil-Hypixel-Parsers
6
+
7
+ **Pure, fully-typed parsers that turn raw Hypixel API JSON into rich, readonly objects.**
8
+
9
+ [![npm](https://img.shields.io/npm/v/@breezil/hypixel-parsers?style=flat-square&logo=npm)](https://www.npmjs.com/package/@breezil/hypixel-parsers)
10
+ [![Docs](https://img.shields.io/github/actions/workflow/status/Breezil/Breezil-Hypixel-Parsers/docs.yml?branch=main&style=flat-square&label=docs)](https://breezil.github.io/Breezil-Hypixel-Parsers/)
11
+ [![License: MIT](https://img.shields.io/badge/license-MIT-blue?style=flat-square)](LICENSE)
12
+ [![Discord](https://img.shields.io/discord/1460052855389159527?style=flat-square&logo=discord&logoColor=white&label=discord)](https://discord.gg/7SxbNMYQNa)
13
+
14
+ [Documentation](https://breezil.github.io/Breezil-Hypixel-Parsers/)
15
+ &nbsp;&nbsp;|&nbsp;&nbsp;
16
+ [Report a bug](https://github.com/Breezil/Breezil-Hypixel-Parsers/issues/new?template=bug_report.yml)
17
+ &nbsp;&nbsp;|&nbsp;&nbsp;
18
+ [Request a feature](https://github.com/Breezil/Breezil-Hypixel-Parsers/issues/new?template=feature_request.yml)
19
+ &nbsp;&nbsp;|&nbsp;&nbsp;
20
+ [Join the Discord](https://discord.gg/7SxbNMYQNa)
21
+
22
+ </div>
23
+
24
+ ---
25
+
26
+ ## Table of Contents
27
+
28
+ 1. [About](#about)
29
+ 2. [Features](#features)
30
+ 3. [Tech Stack](#tech-stack)
31
+ 4. [Getting Started](#getting-started)
32
+ - [Prerequisites](#prerequisites)
33
+ - [Installation](#installation)
34
+ 5. [Quick Start](#quick-start)
35
+ 6. [Documentation](#documentation)
36
+ 7. [API Reference](#api-reference)
37
+ 8. [Project Structure](#project-structure)
38
+ 9. [Releases and Deployment](#releases-and-deployment)
39
+ 10. [Roadmap](#roadmap)
40
+ 11. [Contributing](#contributing)
41
+ 12. [Code of Conduct](#code-of-conduct)
42
+ 13. [License](#license)
43
+ 14. [Support &amp; Community](#support--community)
44
+ 15. [Acknowledgements](#acknowledgements)
45
+
46
+ ---
47
+
48
+ ## About
49
+
50
+ Breezil-Hypixel-Parsers is a fully open-source TypeScript **library** that turns raw Hypixel API JSON into rich, readonly, fully-typed objects. It gives you one focused parser per domain (player, guild, status, the whole SkyBlock tree, and around twenty game modes) instead of hand-mapping deeply nested response shapes yourself.
51
+
52
+ The parsers are pure: no network calls, no config, no side effects. You hand them the raw JSON, you get a clean typed object back. That makes them easy to test, easy to reason about, and safe to drop anywhere. They power [`@breezil/hypixel-api`](https://github.com/Breezil), but they work standalone on any Hypixel JSON you already have.
53
+
54
+ > Part of [**Breezil**](https://github.com/Breezil), an open-source org building clean,
55
+ > well-documented projects, tools, and bots. No closed blobs, no sketchy builds. Every line
56
+ > is here to read.
57
+
58
+ > **Using a third-party API or platform?** Breezil-Hypixel-Parsers follows the terms of service of
59
+ > anything it integrates with. We do not ship anything designed to abuse a platform or get
60
+ > accounts banned.
61
+
62
+ ## Features
63
+
64
+ - 🧩 One focused parser per Hypixel endpoint: player, guild, status, recent games, the full SkyBlock tree, resources, static endpoints, and housing
65
+ - 🎮 Twenty game modes covered in full depth: BedWars, SkyWars, Duels, Arcade, Build Battle, Murder Mystery, TNT Games, The Pit, Mega Walls, Blitz, UHC, and more
66
+ - 🔒 Strict-raw: mirrors the raw API field-for-field with zero computation (no ratios, no levels-from-xp, no derived totals); computed values belong in a wrapper on top
67
+ - 🗜️ Decoded NBT: base64 plus gzipped item NBT is decoded and typed, not left as an opaque blob
68
+ - 📦 Pure and readonly, shipped as a published TypeScript library with full type declarations
69
+
70
+ ## Tech Stack
71
+
72
+ | Layer | Choice |
73
+ | ----------- | ---------------------------------------- |
74
+ | Language | TypeScript |
75
+ | Build | `tsc -b` (TypeScript project references) |
76
+ | Package mgr | npm |
77
+
78
+ ## Getting Started
79
+
80
+ ### Prerequisites
81
+
82
+ Make sure you have these installed before you start.
83
+
84
+ | Requirement | Version | Notes |
85
+ | ----------- | ------- | -------------------------------- |
86
+ | Node.js | `>=20` | [nodejs.org](https://nodejs.org) |
87
+ | npm | `>=10` | Ships with Node.js |
88
+
89
+ This library does not talk to the network and needs no API keys. You bring the raw Hypixel JSON.
90
+
91
+ ### Installation
92
+
93
+ ```bash
94
+ # Clone the repo
95
+ git clone https://github.com/Breezil/Breezil-Hypixel-Parsers.git
96
+ cd Breezil-Hypixel-Parsers
97
+
98
+ # Install dependencies and build
99
+ npm install
100
+ npm run build
101
+ ```
102
+
103
+ Prefer it as a dependency in your own project?
104
+
105
+ ```bash
106
+ npm install @breezil/hypixel-parsers
107
+ ```
108
+
109
+ ## Quick Start
110
+
111
+ ```ts
112
+ import { parsePlayer, parseBedWars } from "@breezil/hypixel-parsers";
113
+
114
+ // `raw` is the `player` object from a Hypixel /player response.
115
+ const player = parsePlayer(raw);
116
+
117
+ console.log(player.nickname); // "Technoblade"
118
+ console.log(player.networkExp); // raw network XP, not a computed level
119
+ console.log(player.karma); // raw karma
120
+ console.log(player.stats.bedwars?.solo.wins); // raw counters, null if never played
121
+
122
+ // Every parser is standalone. Hand it just the block you care about:
123
+ const bedwars = parseBedWars(rawBedwarsBlock, starLevel);
124
+ console.log(bedwars.solo.wins, bedwars.solo.kills); // raw, no ratios
125
+ ```
126
+
127
+ Each parser returns a readonly, fully-typed object. Game-mode parsers return `null` when the player has never touched that mode.
128
+
129
+ ## Documentation
130
+
131
+ The full reference lives at **[the documentation site](https://breezil.github.io/Breezil-Hypixel-Parsers/)**: every export, its type, every field, and the endpoint-to-parser map, organized by domain. The section below is the overview; the docs leave nothing out.
132
+
133
+ ## API Reference
134
+
135
+ Every export is a pure function: raw Hypixel JSON in, a readonly fully-typed object out. There is no client, no config, and no state. The library is strict-raw: it mirrors the API field-for-field and does zero computation (no ratios, no levels-from-xp, no derived totals); computed values belong in a wrapper built on top.
136
+
137
+ There is a parser for every endpoint the Hypixel API exposes:
138
+
139
+ - **Core:** `parsePlayer` (aggregates all game modes), `parseGuild`, `parseStatus`, `parseRecentGames`
140
+ - **Game modes (20):** `parseBedWars`, `parseSkyWars`, `parseDuels`, `parseArcade`, `parseBuildBattle`, `parseMurderMystery`, `parseTNTGames`, `parsePit`, `parseMegaWalls`, `parseBlitz`, `parseUHC`, `parseSmashHeroes`, `parseCopsAndCrims`, `parsePaintball`, `parseQuakecraft`, `parseVampireZ`, `parseWalls`, `parseWarlords`, `parseTurboKartRacers`, `parseArenaBrawl`
141
+ - **SkyBlock:** `parseSkyBlockProfile`, `parseSkyBlockProfiles`, `parseBazaar`, `parseAuction`, `parseAuctionList`, `parseAuctionsPage`, `parseMuseum`, `parseGarden`, `parseSkyBlockNews`, `parseFireSales`, `parsePlayerBingo`, `parseSkyBlockItems`, `parseSkyBlockSkills`, `parseSkyBlockCollections`, `parseSkyBlockElection`, `parseSkyBlockBingo`
142
+ - **Resources:** `parseAchievements`, `parseChallenges`, `parseQuests`, `parseGuildAchievements`, `parseGames`, `parseVanityPets`, `parseVanityCompanions`
143
+ - **Static & housing:** `parseBoosters`, `parseLeaderboards`, `parseGameCounts`, `parseWatchdogStats`, `parseHouse`, `parseHouses`
144
+ - **NBT decoding:** `decodeNbt`, `decodeItemBytes`
145
+ - **Helpers (`common`):** `num`, `str`, `bool`, `obj`, `date`, the small safe readers the parsers are built on
146
+
147
+ Game-mode parsers take the player's `stats` block and return the mode's typed stats, or `null` when the player has never played it (`parseBedWars` also takes the star `level`, passed through verbatim). Every type behind a parser (such as `HypixelPlayer`, `BedWarsStats`, or `SkyBlockProfile`) is exported from the package root too.
148
+
149
+ > **Full reference:** every export, type, field, and endpoint is documented exhaustively at the [documentation site](https://breezil.github.io/Breezil-Hypixel-Parsers/). This README is the overview; the docs leave nothing out.
150
+
151
+ ## Project Structure
152
+
153
+ ```text
154
+ Breezil-Hypixel-Parsers/
155
+ ├─ src/
156
+ │ ├─ index.ts # Public entry point, re-exports every module
157
+ │ ├─ common.ts # Shared, side-effect-free parse helpers
158
+ │ ├─ player.ts # parsePlayer + HypixelPlayer aggregate
159
+ │ ├─ guild.ts # parseGuild
160
+ │ ├─ status.ts # parseStatus
161
+ │ ├─ recentgames.ts # parseRecentGames
162
+ │ ├─ nbt.ts # decodeNbt / decodeItemBytes (base64 + gzip NBT)
163
+ │ ├─ skyblock*.ts # SkyBlock tree (profile, bazaar, auctions, museum, …)
164
+ │ ├─ static.ts # boosters, leaderboards, gamecounts, watchdog
165
+ │ ├─ housing.ts # parseHouse / parseHouses
166
+ │ ├─ resources-*.ts # achievements, challenges, quests, games, vanity
167
+ │ └─ <mode>.ts # one file per game mode (bedwars, skywars, …)
168
+ ├─ dist/ # Build output (tsc -b)
169
+ └─ package.json
170
+ ```
171
+
172
+ ## Releases and Deployment
173
+
174
+ Two things ship automatically from this repo, so there is no manual deploy step.
175
+
176
+ **Documentation.** The docs site rebuilds and deploys to GitHub Pages on every push to `main`, via `.github/workflows/docs.yml`. Merge to `main` and the site updates on its own.
177
+
178
+ **npm package.** Publishing to npm is automated by `.github/workflows/publish.yml`, which runs when a GitHub Release is published. Releases follow [Semantic Versioning](https://semver.org). To cut one:
179
+
180
+ 1. Bump `version` in `package.json` (for example `1.0.1`).
181
+ 2. Merge that change to `main` (via a PR, since `main` is protected).
182
+ 3. On GitHub, go to Releases, choose Draft a new release, create a tag like `v1.0.1`, write the notes, and click Publish release.
183
+
184
+ Publishing the release triggers the workflow, which builds the package and runs `npm publish` with provenance. The first publish is done once by a maintainer (`npm publish` locally) so the package exists, after which the Trusted Publisher setup lets the Action handle every release with no token to manage.
185
+
186
+ ## Roadmap
187
+
188
+ - [ ] Add an automated test suite covering the core parsers
189
+ - [ ] Expand modelled fields on the SkyBlock profile tree
190
+
191
+ Have an idea? [Open a feature request](https://github.com/Breezil/Breezil-Hypixel-Parsers/issues/new?template=feature_request.yml).
192
+
193
+ ## Contributing
194
+
195
+ Contributions are welcome and genuinely appreciated, first timers included. 💙
196
+
197
+ 1. Fork the repo and create your branch: `git checkout -b feat/my-feature`
198
+ 2. Make your changes and add tests where it makes sense
199
+ 3. Run `npm run build` to keep things green
200
+ 4. Commit using [Conventional Commits](https://www.conventionalcommits.org): `feat: add pagination`
201
+ 5. Open a Pull Request and describe what changed and why
202
+
203
+ New to the project? Look for issues labeled
204
+ [`good first issue`](https://github.com/Breezil/Breezil-Hypixel-Parsers/labels/good%20first%20issue).
205
+ See [CONTRIBUTING.md](CONTRIBUTING.md) for the full guide.
206
+
207
+ ## Code of Conduct
208
+
209
+ This project follows the Breezil [Code of Conduct](CODE_OF_CONDUCT.md). By taking part you
210
+ agree to uphold it. Be kind, be welcoming.
211
+
212
+ ## License
213
+
214
+ Distributed under the **MIT License**. See [`LICENSE`](LICENSE) for the full text.
215
+
216
+ ## Support &amp; Community
217
+
218
+ - 💬 **Discord:** [Join the Breezil community](https://discord.gg/7SxbNMYQNa)
219
+ - 🐛 **Issues:** [github.com/Breezil/Breezil-Hypixel-Parsers/issues](https://github.com/Breezil/Breezil-Hypixel-Parsers/issues)
220
+ - 💡 **Discussions:** [github.com/Breezil/Breezil-Hypixel-Parsers/discussions](https://github.com/Breezil/Breezil-Hypixel-Parsers/discussions)
221
+
222
+ ## Acknowledgements
223
+
224
+ - The [Hypixel Public API](https://api.hypixel.net) and its documented data shapes
225
+ - The [hypixel-api-reborn](https://github.com/Hypixel-API-Reborn/hypixel-api-reborn) project and the wider Hypixel API community, whose work we referenced while building this
226
+ - Everyone in the [Breezil Discord](https://discord.gg/7SxbNMYQNa)
227
+
228
+ Every parser was fact-checked against real, public Hypixel API responses. Thanks to the players whose public profiles made that verification possible: Technoblade 👑, _Wile, acoo398, AsrielDreemurr, Complextual, doi, gewoontoon, GoHawksDoesMC, Hibiikii, huntz, ILOVESKYCLASH, ImReeset, ImVoids, izzebella, jackabussy, Jackel1, JelleOG, KnightRush, kristan100, Lem0n, Lemoh, Melonapplesauce, NEmQnjA, notShaheerGamer, phroops, Skorlex, Slies, StinqRay, StreetRules, Sultanik, Super_RvD, suta060, titi2502, tsm1022, and Verxum_.
229
+
230
+ ---
231
+
232
+ <div align="center">
233
+ <sub>Built with 💙 by <a href="https://github.com/Breezil">Breezil</a>.</sub>
234
+ </div>
235
+