Skip to content

Commit cdb97e5

Browse files
authored
docs(browser): Added section outlines for browser features and integrations (#52)
* docs(browser) Adjust wording on browser index and vision.md * Add .pnp.cjs and .pnp.loader.mjs to .gitignore * docs: removed local build files * docs: update .gitignore * docs: Update .gitignore to include /docs/.vitepress/cache/ and /.yarn/ * docs(browser): Update navigation links in config.ts for Community Engagement and API * Update navigation links in config.ts for Community Engagement and API
1 parent f2ede9c commit cdb97e5

15 files changed

+274
-6
lines changed

.web/.gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,6 @@
11
/docs/.vitepress/dist/
2+
/docs/.vitepress/cache/
23
/node_modules/
4+
/.yarn/
5+
.pnp.cjs
6+
.pnp.loader.mjs

.web/docs/.vitepress/config.ts

+21-2
Original file line numberDiff line numberDiff line change
@@ -225,11 +225,30 @@ export default defineConfig({
225225
]
226226
},
227227
{
228-
text: 'Launching', link: '/browser/launch/', items: [
228+
text: 'Launch Guides', link: '/browser/launch/', items: [
229229
{text: 'Launch Your Server', link: '/browser/launch/server'},
230230
{text: 'Launch Your Game', link: '/browser/launch/game'},
231231
]
232-
}
232+
},
233+
{
234+
text: 'Community Engagement', link: '/browser/engage/', items: [
235+
{text: 'Best Practices', link: '/browser/engage/tips'},
236+
{text: 'Update Launches', link: '/browser/engage/updates'},
237+
{text: 'Event Management', link: '/browser/engage/events'},
238+
]
239+
},
240+
{
241+
text: 'API', link: '/browser/api/', items: [
242+
{text: 'Authentication', link: '/browser/api/auth'},
243+
{text: 'Versioning', link: '/browser/api/versions'},
244+
{text: 'Endpoints', link: '/browser/api/endpoints'},
245+
{text: 'Rate Limits', link: '/browser/api/ratelimits'},
246+
{text: 'SDK and Resources', link: '/browser/api/developers'},
247+
]
248+
},
249+
{
250+
text: 'FAQ', link: '/browser/faq/', items: []
251+
},
233252
]
234253
},
235254
services,

.web/docs/browser/api/auth.md

+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# Minekube Browser - API Authentication
2+
3+
## Overview
4+
Authentication in the Minekube Browser API is handled through API keys. This section explains how to obtain and use your API keys to access the API securely.
5+
6+
## Generating API Keys
7+
1. **Login to Dashboard:** Access the [Minekube Dashboard](https://dashboard.minekube.com) with your user credentials.
8+
2. **Navigate to API Section:** Locate the API management section.
9+
3. **Create New Key:** Follow the prompts to generate a new API key.
10+
4. **Set Permissions:** Assign the necessary permissions based on your application needs.
11+
12+
## Using API Keys
13+
- **Include in Headers:** Always include your API key in the request headers:
14+
```http
15+
Authorization: Bearer <your_api_key>
16+
17+
### Endpoint Protection
18+
- **Unauthorized Access:** All protected endpoints will return a `401 Unauthorized` response if a valid API key is not included in the request headers.
19+
20+
## Rate Limiting
21+
- **Purpose:** To prevent abuse and ensure fair usage, API requests are rate-limited. View specific rate limit details in the [Rate Limits](ratelimits.md) section.
22+
- **Limits:** Rate limits are defined by the number of requests per minute, varying by API key.
23+
24+
## Security Best Practices:
25+
::: tip
26+
27+
**Ensure secure storage of your API keys to prevent unwanted abuse. View our [Security Guide](../../guide/protections.html) for more info**
28+
:::
29+
### 1. Key Rotation
30+
- **Security Recommendation:** Periodic rotation of API keys is advised to maintain security.
31+
- **Regeneration:** Keys can be regenerated through the dashboard as needed.
32+
33+
### 2. IP Whitelisting
34+
- **Added Security:** API keys can be associated with specific IP addresses or ranges, restricting access to whitelisted IPs only.
35+
36+
### 3. Fine Tuned Access
37+
- **Access Control:** API keys are assigned different permission levels to control access to various endpoints or features within your [Minekube Organization](../../guide/quick-start.md).
38+
39+
## Next Steps
40+
- **API Versioning:** Detailed documentation on versioning for proper use of API keys is available in the [Versioning](./versions.md) section.
41+
42+
- **API Endpoints:** View available endpoints and example responses in [Endpoints](./endpoints.md) section.

.web/docs/browser/api/developers.md

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# Minekube Browser - SDK and Resources
2+
3+
## Overview
4+
We provide SDKs and additional resources to facilitate easy integration of our API into your applications.
5+
6+
## SDK Downloads
7+
Download our SDKs tailored for different programming environments:
8+
9+
- [Java SDK](/browser/api/developers/java)
10+
11+
## Integration Examples
12+
Example using the Java SDK to access server listings:
13+
14+
```java
15+
MinekubeAPI api = new MinekubeAPI("<your_api_key>");
16+
ServerList servers = api.getServers();

.web/docs/browser/api/endpoints.md

+49
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# Brower API Endpoints
2+
3+
The Minekube Browser API provides a range of endpoints to interact with the platform:
4+
5+
## Server Listing
6+
7+
### `GET /servers`
8+
- **Description:** Retrieve a list of all public servers.
9+
10+
### `GET /servers/{id}`
11+
- **Description:** Get details of a specific server by its ID.
12+
13+
## User Authentication
14+
15+
### `POST /auth/login`
16+
- **Description:** Authenticate a user and retrieve an access token.
17+
18+
### `GET /auth/me`
19+
- **Description:** Get the currently authenticated user's details.
20+
21+
### `PUT /auth/me`
22+
- **Description:** Update the currently authenticated user's details.
23+
24+
## Server Management
25+
26+
### `GET /my-servers`
27+
- **Description:** Retrieve a list of servers owned by the authenticated user.
28+
29+
### `GET /my-servers/{id}`
30+
- **Description:** Get details of a specific server owned by the authenticated user.
31+
32+
### `PUT /my-servers/{id}`
33+
- **Description:** Update the details of a specific server owned by the authenticated user.
34+
35+
## Player Statistics
36+
37+
### `GET /stats/players`
38+
- **Description:** Retrieve overall player statistics, including total players, online players, and unique players.
39+
40+
### `GET /stats/players/top`
41+
- **Description:** Get a list of the top servers by player count.
42+
43+
## Error Responses
44+
45+
- **400 Bad Request:** Invalid request format or missing parameters.
46+
- **401 Unauthorized:** Authentication failed or invalid API key.
47+
- **403 Forbidden:** Access forbidden due to insufficient permissions.
48+
- **404 Not Found:** Requested resource not found.
49+
- **500 Internal Server Error:** An unexpected server error occurred.

.web/docs/browser/api/index.md

+64
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# Minekube Browser - API Documentation
2+
3+
Welcome to the Minekube Browser API documentation. This guide provides all the necessary details to integrate with our API, focusing on server listings initially, with plans to expand to games, plugins, and mods.
4+
5+
## Table of Contents
6+
7+
- [Authentication](#authentication)
8+
- [Versioning](#versioning)
9+
- [Endpoints](#endpoints)
10+
- [Rate Limits](#rate-limits)
11+
- [SDK and Resources](#sdk-and-resources)
12+
13+
## Authentication
14+
15+
Secure access to the API is controlled through API keys and other authentication mechanisms. Here, you'll find how to obtain and manage your API keys, including:
16+
17+
- **Generating API Keys:** Step-by-step guide to generate your unique API keys through the Minekube Browser dashboard.
18+
- **Using API Keys:** How to include your API key in API requests to authenticate.
19+
- **Security Best Practices:** Recommendations for securing your API keys.
20+
21+
[Explore Authentication Details](/browser/api/auth)
22+
23+
## Versioning
24+
25+
To maintain stability and backward compatibility, our API implements a versioning system. This section covers:
26+
27+
- **Version Formats:** Explanation of our semantic versioning format.
28+
- **Handling Versions:** How to specify API versions in your requests.
29+
- **Deprecation and Migration:** Guidelines on deprecated features and migrating to newer API versions.
30+
31+
[Learn More About Versioning](/browser/api/versions)
32+
33+
## Endpoints
34+
35+
This section describes all the available API endpoints, their functions, and how to use them. Highlights include:
36+
37+
- **Server Listing Endpoints:** Access information about servers, including details, listings, and management functions.
38+
- **User and Authentication Endpoints:** How to manage user authentication and user-specific data.
39+
40+
[Detailed Endpoint Information](/browser/api/endpoints)
41+
42+
## Rate Limits
43+
44+
Understanding the rate limits is crucial to ensure fair use and system stability. This section provides:
45+
46+
- **Rate Limit Rules:** Specific limits on the number of requests that can be made to the API.
47+
- **Best Practices:** Tips on how to handle and respond to rate limit conditions.
48+
49+
[Check Our Rate Limit Policies](/browser/api/ratelimits)
50+
51+
## SDK and Resources
52+
53+
For developers looking to integrate quickly, we offer SDKs and other resources. This section includes:
54+
55+
- **SDK Downloads:** Links to our official SDKs for various programming environments.
56+
- **Integration Examples:** Practical examples showing how to use the API in common scenarios.
57+
- **Developer Support:** Information on how to get help if you encounter issues or have questions.
58+
59+
[Access SDK and Developer Resources](/browser/api/developers)
60+
61+
62+
## Support
63+
If you have any questions or issues please join our [Discord](https://minekube.com/discord)
64+

.web/docs/browser/api/ratelimits.md

Whitespace-only changes.

.web/docs/browser/api/versions.md

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# Minekube Browser - API Versioning
2+
3+
## Overview
4+
To ensure backward compatibility and smooth updates, the Minekube Browser API follows a clear versioning system.
5+
6+
## Version Numbering
7+
API versions are indicated by a semantic version number, e.g., `v1`, `v2`. This number is included in the base URL of each API endpoint.
8+
9+
## Version Stability
10+
- **Major Updates:** Transitioning from `v1` to `v2` may introduce breaking changes.
11+
- **Minor Updates:** Upgrades such as `v1.0` to `v1.1` will remain backward-compatible.
12+
13+
## Deprecation Policy
14+
Deprecated endpoints or features will be clearly marked in the documentation, including the expected removal date.
15+
16+
## Version Migration
17+
When a new major version is released, a migration path will be provided to help users transition smoothly to the new version.
18+
19+
## Version Header
20+
API requests can include an optional `Accept-Version` header to specify the desired API version. If not provided, the latest stable version will be used.
21+
22+
## Versioning in Responses
23+
API responses may include an `API-Version` header, indicating the version used to process the request.
24+
25+
## Version-Specific Documentation
26+
The API documentation will provide separate sections for each major version, outlining any changes or additions.
27+
28+
## Release Notes
29+
Release notes will be provided for each API version, detailing any changes, improvements, or fixes.
30+
31+
## Sunset Policy
32+
Deprecated versions will continue to be supported for a defined period, after which they may be sunset. Advance notice will be provided before sunsetting a version.
33+
34+
## Client Libraries
35+
Official client libraries will be updated to support new API versions, and older versions will be maintained for a reasonable period.
36+
37+
## Version Negotiation
38+
The API may support version negotiation in the future, allowing clients to specify their preferred version and receive a response in that version.

.web/docs/browser/engage/events.md

Whitespace-only changes.

.web/docs/browser/engage/index.md

Whitespace-only changes.

.web/docs/browser/engage/tips.md

Whitespace-only changes.

.web/docs/browser/engage/updates.md

Whitespace-only changes.

.web/docs/browser/faq/index.md

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Minekube Browser FAQs
2+
3+
Welcome to the FAQ for Minekube Browser. Here you will find answers to common questions about the platform, its features, and how you can get involved in the community.
4+
5+
## What is the Minekube Browser?
6+
7+
>The Minekube Browser is a revolutionary Minecraft server list and marketplace, offering a comprehensive platform for players, developers, and hosting providers. It goes beyond a simple server list by providing tools and services for building, listing, and launching Minecraft games.
8+
9+
## How is Minekube Browser different from other server lists?
10+
11+
> Minekube Browser is more than just a directory of servers. It offers a launchpad for server experiences, providing robust infrastructure services like Minekube Games for server management and Minekube Connect for simplified connectivity. It also focuses on community engagement and offers features to facilitate collaboration and content discovery.
12+
13+
## Who is Minekube Browser for?
14+
15+
> Minekube Browser caters to a wide range of the Minecraft community, including players seeking new adventures, developers crafting game worlds, and hosting providers scaling their services. Our platform is designed to be accessible and beneficial to all segments of the Minecraft community.
16+
17+
## What benefits does Minekube Browser offer to players?
18+
19+
> Players can discover an extensive range of Minecraft games and experiences, all in one place. Minekube Browser offers a curated selection of servers, ensuring a high-quality and diverse gaming experience. Players can also connect with other community members, participate in events, and provide feedback to shape the future of the platform.
20+
21+
## How can developers benefit from Minekube Browser?
22+
23+
> Developers can leverage the Minekube Browser platform to showcase their Minecraft creations, gain exposure, and build a dedicated customer base. We provide tools and services to simplify server management, connectivity, and community engagement, allowing developers to focus on crafting immersive games.
24+
25+
## How can I contribute to the Minekube Browser community?
26+
27+
> We encourage active participation and feedback from the community. Join our [Discord](https://minekube.com/discord) server to connect with other players, developers, and Minekube team members. You can share your ideas, provide feedback, report issues, and contribute to the overall growth and improvement of the Minekube Browser platform.

.web/docs/browser/index.md

+11-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
1-
# Welcome to Minekube Browser Documentation
1+
# Minekube Browser Documentation <VPBadge>POC</VPBadge>
2+
3+
::: warning
4+
The Minekube Browser is currently in its developmental phase. We invite you to join our [Discord](https://minekube.com/discord) community and contribute by sharing your valuable feedback!
5+
:::
26

37
## Introduction
48

@@ -8,6 +12,11 @@ The Minekube Browser is more than a server list; it's a comprehensive marketplac
812

913
Our documentation is designed to be accessible and informative for a public audience, players, developers and providers, focusing on the practicalities and benefits of our platform and delving into the integration details for power users. As we walk you through the Minekube Browser, you'll understand how it caters to the needs of various stakeholders in the Minecraft ecosystem.
1014

15+
16+
## Spread the word
1117
Join us as we explore the features, vision, and community that make Minekube Browser a beacon of innovation in the Minecraft universe. We invite you to be an active participant in this journey, to collaborate, contribute, and most importantly, to enjoy the experience that the Minekube Browser offers.
1218

13-
Welcome aboard the new chapter of Minecraft server exploration and game building — Welcome to the Minekube Platform.
19+
## Getting Started
20+
Welcome aboard the new chapter of Minecraft server exploration and game building — Welcome to the Minekube Platform.
21+
22+
To get started, check out our [Quicklaunch Guides](./launch/) and [FAQ](./faq/).

.web/docs/browser/platform.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Minekube Browser: A Comprehensive Platform
22

3-
The Minekube Browser transcends the traditional boundaries of Minecraft server lists. It's a vibrant marketplace for developers to share their Minecraft creations and for players to embark on new gaming adventures. By connecting players, developers, and hosting providers on a single platform, Minekube Browser facilitates a seamless transition from game selection to server launch.
3+
The Minekube Browser transcends the traditional boundaries of Minecraft server lists. It's a vibrant marketplace for developers and entrepreneurs to share their Minecraft creations and for players to embark on new gaming adventures. By connecting players, developers, and hosting providers on a single platform, Minekube Browser facilitates a seamless transition from game selection to server launch.
44

55
## Marketplace for Minecraft Games and Server Experiences
66

@@ -15,5 +15,5 @@ Minekube Browser is integrated with Minekube's broader suite of tools and servic
1515
- **Minekube Connect:** Our networking solution simplifies connectivity, offering public, DDoS-protected endpoints, making the multiplayer experience as smooth as single-player.
1616
- **Minekube Games:** An administrative dashboard allowing server management with ease, tailored for both server admins and players to streamline their gaming experience.
1717

18-
Through Minekube Browser, we're not just connecting people to games; we're connecting them to an experience that's enriched by the community and supported by robust technology. It's here that the creativity of the Minecraft community truly comes to life, supported by an infrastructure that understands and enhances the gaming landscape.
18+
Through Minekube Browser, we're not just connecting people to games; we're connecting them to an experience that's enriched by the community and supported by robust technology. It's here that the creativity of the Minecraft community truly comes to life, supported by an infrastructure that is primed for the next generation of cloud gaming experiences.
1919

0 commit comments

Comments
 (0)