Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
273529a
Initial plan
Copilot Feb 16, 2026
efb9456
chore: upgrade ESLint, TypeScript ESLint, testing frameworks and othe…
Copilot Feb 16, 2026
23767ec
chore: upgrade remaining dependencies and add Node 23.x, 24.x to test…
Copilot Feb 16, 2026
3d437c9
fix: address code review comments - fix JSDoc formatting and disable …
Copilot Feb 16, 2026
e56f392
Fix documentation build for Node 24+ compatibility
Copilot Feb 16, 2026
2b8fb2c
Prepare to rebuild documentation from scratch
Copilot Feb 16, 2026
4e8ec98
Complete documentation rebuild with VitePress and TypeDoc
Copilot Feb 16, 2026
1e0bbd4
Fix documentation issues: navigation, assets, and build process
Copilot Feb 16, 2026
523338c
Fix remaining documentation issues: logo, API auto-build, guide content
Copilot Feb 17, 2026
ceedfb7
docs: update getting API key section
zikeji Feb 17, 2026
3f2ae69
Improve TypeDoc integration with VitePress theme and add CHANGELOG
Copilot Feb 17, 2026
947c993
chore(fix): fix predocs
zikeji Feb 17, 2026
539c895
Fix TypeDoc sidebar links and update all ts-api references to api
Copilot Feb 17, 2026
668bf40
Fix all 46 TypeDoc warnings
Copilot Feb 17, 2026
9b018c4
Include DefaultMeta and RateLimitData in documentation
Copilot Feb 17, 2026
9c9e805
Include all Response types in documentation and revert CHANGELOG inte…
Copilot Feb 17, 2026
9ebed94
Document internal types without exporting them from main API
Copilot Feb 17, 2026
21337b6
Restore all function and type documentation by exporting internal types
Copilot Feb 17, 2026
549ecc4
chore(docs): correct documentation URLs
zikeji Feb 17, 2026
aa82e09
revert: the bot fucked with types
zikeji Feb 17, 2026
594aa22
chore(docs): README
zikeji Feb 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 45 additions & 3 deletions .eslintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,12 @@
"es6": true,
"node": true
},
"extends": ["airbnb-typescript-prettier"],
"extends": [
"airbnb-base",
"plugin:@typescript-eslint/recommended",
"plugin:@typescript-eslint/recommended-requiring-type-checking",
"prettier"
],
"globals": {
"Atomics": "readonly",
"SharedArrayBuffer": "readonly"
Expand All @@ -12,33 +17,70 @@
"parserOptions": {
"project": "./tsconfig.json"
},
"plugins": ["@typescript-eslint"],
"plugins": ["@typescript-eslint", "prettier"],
"settings": {
"react": {
"version": "999.999.999"
},
"import/resolver": {
"node": {
"extensions": [".js", ".ts"]
}
}
},
"rules": {
"prettier/prettier": "error",
"camelcase": 0,
"import/prefer-default-export": 0,
"import/extensions": [
"error",
"ignorePackages",
{
"ts": "never"
}
],
"lines-between-class-members": 0,
"no-shadow": 0,
"@typescript-eslint/no-namespace": 0,
"@typescript-eslint/no-shadow": 2,
"@typescript-eslint/no-redundant-type-constituents": 0,
"@typescript-eslint/no-unsafe-declaration-merging": 0,
"@typescript-eslint/no-unsafe-assignment": 0,
"@typescript-eslint/no-unsafe-return": 0,
"@typescript-eslint/no-unsafe-enum-comparison": 0,
"@typescript-eslint/no-unsafe-argument": 0,
"@typescript-eslint/no-unsafe-member-access": 0,
"@typescript-eslint/no-unsafe-call": 0,
"@typescript-eslint/restrict-template-expressions": 0,
"@typescript-eslint/no-unnecessary-type-assertion": 0,
"@typescript-eslint/no-array-delete": 0,
"no-param-reassign": [
2,
{
"props": false
}
],
"no-unused-vars": 0,
"@typescript-eslint/no-unused-vars": 2,
"@typescript-eslint/no-unused-vars": [
"error",
{
"argsIgnorePattern": "^_",
"varsIgnorePattern": "^_",
"caughtErrorsIgnorePattern": "^_"
}
],
"no-use-before-define": 0,
"@typescript-eslint/no-use-before-define": [
2,
{
"ignoreTypeReferences": true
}
],
"import/no-extraneous-dependencies": [
"error",
{
"devDependencies": true
}
]
}
}
5 changes: 1 addition & 4 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,13 +63,10 @@ jobs:
node-version: latest
- run: npm ci
- name: Build documentation
env:
NODE_ENV: production
NODE_OPTIONS: --max-old-space-size=4096 --openssl-legacy-provider
run: npm run docs:build
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./docs/.vuepress/dist
publish_dir: ./docs/.vitepress/dist
cname: node-hypixel.zikeji.com
2 changes: 1 addition & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
strategy:
max-parallel: 1
matrix:
node-version: [20.x, 22.x]
node-version: [20.x, 22.x, 23.x, 24.x]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,10 @@
.vscode/
docs/.vuepress/dist
docs/.vuepress/public/oembed.json
docs/.vitepress/cache
docs/.vitepress/dist
docs/ts-api
docs/api
coverage/
.nyc_output/
dist/
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
[docs]: https://node-hypixel.zikeji.com
[hypixel]: https://api.hypixel.net/

With **[IntelliSense](https://code.visualstudio.com/docs/editor/intellisense)** support, this is an unopinionated async/await API wrapper for [Hypixel's Public API][hypixel]. It is developed in TypeScript complete with [documentation][docs], [typed interfaces](https://node-hypixel.zikeji.com/ts-api/) for all API responses, built-in rate-limit handling, [flexible cache support](https://node-hypixel.zikeji.com/guide/advanced/cache/), and some [helper functions](https://node-hypixel.zikeji.com/guide/helpers/player-ranks/).
With **[IntelliSense](https://code.visualstudio.com/docs/editor/intellisense)** support, this is an unopinionated async/await API wrapper for [Hypixel's Public API][hypixel]. It is developed in TypeScript complete with [documentation][docs], [typed interfaces](https://node-hypixel.zikeji.com/api/) for all API responses, built-in rate-limit handling, [flexible cache support](https://node-hypixel.zikeji.com/guide/advanced/cache), and some [helper functions](https://node-hypixel.zikeji.com/guide/helpers/player-ranks).

## 4.0.0 Information

Expand Down Expand Up @@ -50,7 +50,7 @@ const client = new Client("API_KEY");

## Helpers

This library adds multiple helpers to facilitate using the Hypixel API. You can find documentation on each helper [here](https://node-hypixel.zikeji.com/guide/helpers/player-ranks/). If you would like to request a helper that doesn't exist, please open an issue. Otherwise if you would like to contribute one refer to the below section.
This library adds multiple helpers to facilitate using the Hypixel API. You can find documentation on each helper [here](https://node-hypixel.zikeji.com/guide/helpers/player-ranks). If you would like to request a helper that doesn't exist, please open an issue. Otherwise if you would like to contribute one refer to the below section.

## Contributing

Expand Down
96 changes: 96 additions & 0 deletions docs/.vitepress/config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
import { defineConfig } from 'vitepress'
import { readFileSync } from 'fs'
import { resolve, dirname } from 'path'
import { fileURLToPath } from 'url'

const __dirname = dirname(fileURLToPath(import.meta.url))
const pkg = JSON.parse(readFileSync(resolve(__dirname, '../../package.json'), 'utf-8'))

// Load TypeDoc sidebar
let typedocSidebar = []
try {
typedocSidebar = JSON.parse(readFileSync(resolve(__dirname, '../api/typedoc-sidebar.json'), 'utf-8'))
} catch (e) {
console.warn('TypeDoc sidebar not found. Run docs:predoc to generate it.')
}

export default defineConfig({
title: pkg.name,
description: pkg.description,
base: '/',
ignoreDeadLinks: true, // Temporary: old VuePress links will be updated

head: [
['link', { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }],
['meta', { name: 'theme-color', content: '#9941d3' }],
],

themeConfig: {
logo: '/logo.svg',

outline: {
level: [2, 3],
label: 'On this page'
},

nav: [
{ text: 'Home', link: '/' },
{ text: 'Guide', link: '/guide/' },
{ text: 'API Reference', link: '/api/' },
{
text: 'Links',
items: [
{ text: 'NPM Package', link: `https://www.npmjs.com/package/${pkg.name}` },
{ text: 'GitHub', link: 'https://github.com/zikeji/node-hypixel' },
{ text: 'Changelog', link: 'https://github.com/zikeji/node-hypixel/blob/main/CHANGELOG.md' }
]
}
],

sidebar: {
'/guide/': [
{
text: 'Guide',
items: [
{ text: 'Getting Started', link: '/guide/' }
]
},
{
text: 'Advanced',
items: [
{ text: 'Cache', link: '/guide/advanced/cache' },
{ text: 'Metadata', link: '/guide/advanced/metadata' }
]
},
{
text: 'Helpers',
items: [
{ text: 'Player Ranks', link: '/guide/helpers/player-ranks' },
{ text: 'Network Level', link: '/guide/helpers/network-level' },
{ text: 'Guild Level', link: '/guide/helpers/guild-level' },
{ text: 'Bedwars Level Info', link: '/guide/helpers/bedwars-level-info' },
{ text: 'Skywars', link: '/guide/helpers/skywars' },
{ text: 'Minecraft Item Data', link: '/guide/helpers/minecraft-item-data' },
{ text: 'Skyblock Profile Collections', link: '/guide/helpers/skyblock-profile-collections' },
{ text: 'Skyblock Profile Skills', link: '/guide/helpers/skyblock-profile-skills' }
]
}
],
'/api/': typedocSidebar
},

socialLinks: [
{ icon: 'github', link: 'https://github.com/zikeji/node-hypixel' },
{ icon: 'npm', link: `https://www.npmjs.com/package/${pkg.name}` }
],

footer: {
message: 'Released under the MIT License.',
copyright: 'Copyright © 2020-present Zikeji'
},

search: {
provider: 'local'
}
}
})
29 changes: 0 additions & 29 deletions docs/.vuepress/components/Custom.vue

This file was deleted.

Loading
Loading