Dashboard
The dashboard is a web page for managing your server from outside the game. It lists active punishments and online players, lets you search for any player and act on them, and exposes every key in config.yml as an editable form.
It is optional. Verité works exactly the same whether or not you ever open it.
Opening it
Run /verite dashboard in game. Verité replies with a private link and a clickable shortcut.
[Verité] Your dashboard is ready. [Click here] to open it, or click the link below:
https://verite.gg/dashboard/<key>The link is unique to that session. Anyone who has the link can see the snapshot it loaded with, so treat it as a password and do not paste it into public chat.
| Command | Description | Permission |
|---|---|---|
/verite dashboard |
Open a dashboard session and receive a link. | verite.admin |
/verite dashboard trust <code> |
Approve a waiting connection. | verite.admin |
/verite dashboard close |
Close every open session immediately. | verite.admin |
Approving a connection
Opening the link is not enough to control anything. When the page connects, every player holding verite.admin receives a prompt in chat:
[Verité] A dashboard window has connected. If it was you, [click here] to trust the session.Click it, or run /verite dashboard trust <code> with the code shown on the page. Until the session is approved, the page can only display the snapshot it loaded with; it cannot read anything further and cannot make changes.
Approve only what you started
A prompt you did not expect means someone else has your link. Ignore it and run /verite dashboard close, which ends every open session at once.
Once approved, the browser is remembered. Connecting again from the same browser skips the approval step for 30 days. Trust is recorded per admin, so approving your own browser does not approve anyone else's.
Timers
Every part of a session expires on its own.
| Thing | Lifetime |
|---|---|
| Dashboard link | 1 hour |
| Approval request | 5 minutes |
| Remembered browser | 30 days |
An expired link cannot be revived. Run /verite dashboard again for a fresh one.
What you can do
Overview shows player count, TPS, memory, uptime, how many players are vanished, and who is currently online. Click any online player to open them.
Players is where the searching happens. Type a name or a UUID. Names that have never joined your server are resolved through Mojang, so you can ban someone before their first login. Selecting a player opens a panel with their punishment history, their known names and addresses, and the controls below.
| Action | Notes |
|---|---|
| Ban, mute, warn, kick | Set a duration, a reason, and optionally make it silent or apply it to the IP as well. |
| Unban, unmute | Shown only when the player currently holds that punishment. |
| Vanish | Available while the player is online. |
| Gamemode | Available while the player is online. |
| Kick | Available while the player is online. |
Punishments issued from the dashboard are recorded against your own name, not a generic account, so /history and /staffhistory attribute them correctly.
Punishments lists everything currently active, with a search box that matches on player, reason, staff member, or type.
Settings exposes every key in config.yml.
Editing the configuration
Each key is rendered according to its type: a dropdown for true and false, a number field for numbers, and a text field for everything else. Changing a value reveals Save and Revert.
Saving writes the single line you changed directly into config.yml. Your comments, blank lines, indentation, and quoting are all preserved, and nothing else in the file is touched. A copy of the previous file is kept as config.yml.bak.
Verité then reloads its own configuration. The server is not restarted and no one is disconnected.
Values are type checked
A value of the wrong shape is rejected before anything is written. Typing a word into a numeric key returns an error naming the type it expected, and the file is left alone.
Some keys only take effect on a restart, exactly as they would if you had edited the file by hand. The module gates (chat.filter.enabled, moderation.enabled, vanish.enabled) and the two automatic update flags are the main ones.
Self hosting
general.dashboard.url points at the site that serves the dashboard. Leave it alone unless you host your own copy.
general:
dashboard.url: "https://verite.gg"How it works
Worth knowing if you are deciding whether to allow this on your network.
The plugin and the browser each generate their own key pair and sign every message they send. Both ends verify every message they receive, and anything that fails its signature check is dropped and logged. The relay in the middle carries the traffic but cannot forge it.
Your server sends one snapshot when the session opens. After that, the page asks for what it needs and your server pushes changes as they happen, so the page stays current without polling.
Nothing reaches your server unless the session was approved in game first. Every approval, every rejected message, and every change made from the dashboard is written to the console with the name of the admin responsible.
The plugin holds no database credentials. It talks to the site's own API, which holds them server side.
Data is temporary
The session snapshot and any pending change are held only until they expire, then deleted. Punishments live in your own database exactly as they do when issued in game. See Privacy and data.