> For the complete documentation index, see [llms.txt](https://docs.mipcraft.eu/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.mipcraft.eu/network-manager/dashboard.md).

# Dashboard

The NetworkManager Web Dashboard is a modern, responsive web application for managing your Minecraft network in real time. It is built with **Vue 3**, styled with **Tailwind CSS**, and features high-fidelity **Tabler Icons**.

***

## Setup & Access

### Same-Server (Embedded)

If the dashboard is served directly from the proxy process:

{% stepper %}
{% step %}
Ensure `web.enabled: true` in your proxy's `config.yml`.
{% endstep %}

{% step %}
Open `http://your-proxy-ip:8080` in a web browser.
{% endstep %}

{% step %}
Log in with the password configured in `config.yml`.
{% endstep %}
{% endstepper %}

### Standalone Panel Server (WebSocket Tunnel) \[Recommended]

If the dashboard is hosted separately using the standalone panel server:

{% stepper %}
{% step %}
Ensure the standalone panel server is running (`--panel` mode) and the proxy has connected to it via the WebSocket tunnel.
{% endstep %}

{% step %}
Open `http://your-panel-ip:8000` in your web browser.
{% endstep %}

{% step %}
Log in using the proxy's password (CORS, SSL, and API URL configuration are managed automatically by the tunnel server).
{% endstep %}
{% endstepper %}

***

## Features & Pages

### 1. Main Dashboard (`/`)

Provides a network-wide birds-eye status.

* **Network Status Cards**: Summarizes active statistics:
  * **Online Players**: Current active connections.
  * **Registered Servers**: Total servers in the configuration.
  * **Maintenance Mode**: Indicates if maintenance is active (with direct toggle buttons for admins).
  * **Join Restrictions**: Quick indicator for whitelist/restricted entry status.
* **Player History Graph**: A rolling 60-minute SVG chart visualizing traffic trends, sampled every minute.
* **Servers Grid**: Card-based displays of all servers showing server states (IDLE, RUNNING, etc.) and player load, with quick restart/ping buttons.
* **Online Players List**: A searchable table of online players, featuring custom skins via Minotar.

***

### 2. Servers Page (`/servers`)

Comprehensive backend server management.

* **Interactive Server Table**: Columns show:
  * Name and unique Server ID.
  * Server Type badge (`HUB`, `LOBBY`, `GAME`, `OTHER`).
  * Server State badge (`IDLE`, `WAITING`, `RUNNING`, `ENDING`, `STOPPING`, `NONE`).
  * Players (current/capacity).
  * Current Game.
* **Action Center**: Restart backend servers (sends `restart` plugin channel signal), force a ping check, edit definitions, or completely remove a server from the proxy setup.
* **Add Server Dialog**: Inject a new server into the proxy routing pool dynamically without reboots. Automatically saves back to `config.yml`.

***

### 3. Server Detail Page (`/server/:name`)

Granular analysis of a single registered server.

* **Live Details**: View game configuration parameters, rejoin policies, and metadata.
* **Server Performance**: Track ping response times and online states.
* **Resident Players**: Displays a list of player avatars currently connected to the server. Clicking an avatar navigates to their detailed player profile.

***

### 4. Players Page (`/players`)

Database search hub for player management.

* **Tabs**:
  * **Online**: Focuses strictly on active network players.
  * **All**: Paginated and searchable database records containing all historic players.
* **Sorting & Searching**: Filter by player name or UUID. Sort by Playtime, Joined Date, Last Online, or Alphabetically.

***

### 5. Player Detail Page (`/players/:uuid`)

An all-in-one profile sheet for network players.

* **Overview Panel**: Displays large custom skin render, UUID, connection status, current server, total playtime (formatted as `Xh Ym`), first joined timestamp, and last online timestamp.
* **Moderation Panel**: Kicks the player with custom reasons, or opens a ban window (perm or temp).
* **Friend Manager Panel**:
  * Automatically activates if the database table `FriendsManagerRelationsPD` is detected.
  * Displays a tab listing the player's friends, their custom skin heads, names, and the exact date they became friends.
* **Party Manager Panel**:
  * Displays current party affiliations of the player.
  * Identifies party leaders, party sizes, and fellow party members directly.

***

### 6. Bans Page (`/bans`)

Central command for player bans and appeals.

* **Live Ban Table**: Lists all active and historic bans with columns for reason, date issued, expiry, and issued IP address.
* **Bans Filter**: Search by player names.
* **New Ban Dialog**: Ban players by UUID or name. Specify standard durations (1 Hour, 24 Hours, 7 Days, 30 Days, 1 Year, or Permanent) and log administrative notes.
* **Revoke Ban**: Unbans a player instantly, updating the database and syncing real-time SSE updates across the network.

***

### 7. Settings Page (`/settings`)

Proxy-wide administrative parameters.

* **MOTD Hex Editor**: Write custom MOTDs with RGB gradient support. Features a live text preview parsing `#RRGGBB` color tags in real time.
* **Maintenance & Whitelist Control**: Toggle maintenance, customize the maintenance warning MOTD, and maintain the list of bypass players allowed to connect during outages.
* **Network Limits**: Adjust global concurrent player caps.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.mipcraft.eu/network-manager/dashboard.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
