ServerPilot is a modern Windows desktop application built with Electron and React 18 that turns the chore of running a local Minecraft server into a one-click experience. Instead of juggling batch files, raw terminal windows, and manual router configuration, you get a polished control panel that handles everything — from launching the Java process to tunneling your server to the internet — all from a single interface.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/GKExpo/ServerPilot/llms.txt
Use this file to discover all available pages before exploring further.
The Problem ServerPilot Solves
Running a Minecraft server the traditional way means writing start scripts, memorising JVM flags, tailing log files in a separate terminal, and explaining port-forwarding steps to every friend who wants to join. When something goes wrong, diagnosing it requires switching between several tools at once. ServerPilot replaces all of that with a unified dashboard. You add a server folder once, and from that point forward every operation — start, stop, backup, console, player activity, file editing — is a single click or keystroke inside the app. Playit.gg integration means friends can join through a public tunnel without you ever touching your router.Key Features
One-Click Start / Stop
Launch your server and its Playit.gg tunnel simultaneously with a single button. Stop both cleanly with the same control.
Live Dashboard
Monitor CPU utilisation, RAM allocation, TPS, uptime, process ID, and connected player count updating in real time via Recharts graphs.
Integrated Console
A dark-themed terminal pipes all server log output directly into the app. Send any command —
op username, say hello, stop — without opening a separate window.Playit.gg Auto-Tunneling
Built-in Playit.gg integration starts and stops the tunnel automatically alongside your server. Friends get a public address with zero port-forwarding configuration.
Player Tracking
See who is online, when they joined, and a full activity feed of chat messages, commands, deaths, advancements, and login attempts — all parsed from live server logs.
File Manager with Monaco Editor
Browse your entire server directory and edit any text file using the same editor engine that powers VS Code, without leaving the app.
server.properties Visual Editor
Edit
server.properties, ops.json, whitelist.json, and banned-players.json through a structured visual interface instead of raw text.ZIP Backup & Restore
Zip up your entire server world with one click. Restore any previous backup just as easily. Backups are stored in a
backups/ subfolder inside each server directory.Multi-Server Management
Add as many server folders as you like and switch between them inside the same window. Each server maintains its own settings, console history, and backup list.
Onboarding Wizard
First-launch wizard walks new users through adding their first server folder step by step, so no documentation is required to get started.
Supported Server Types
ServerPilot works with any server JAR you already have. The following server types are explicitly recognised:| Server Type | Notes |
|---|---|
| Paper | Recommended — fast, plugin-compatible, widely supported |
| Fabric | Mod-loader server; works with any Fabric version |
| Forge | Mod-loader server; works with any Forge version |
| Vanilla | Official Mojang server JAR, no mods or plugins |
java -jar <yourjar>.jar, it is compatible with any JAR-based server that follows the standard Minecraft server startup convention.
System Requirements
- OS: Windows 10 or Windows 11 (64-bit)
- Java: Java 17 or newer — required by the server itself, not bundled with ServerPilot
- Server folder: A directory containing at least one server JAR file (e.g.
paper.jar) - Optional: Playit.gg executable if you want automatic public tunneling
Tech Stack
ServerPilot V2 was rebuilt from the ground up. The full technology stack is:| Layer | Technology |
|---|---|
| Desktop shell | Electron 42 |
| UI framework | React 18 + Vite 6 |
| Styling | Tailwind CSS 3 |
| Persistent storage | Electron-Store 8 (local JSON) |
| Performance charts | Recharts 2 |
| Process monitoring | Pidusage 3 |
| Code editor | Monaco Editor 0.53 (@monaco-editor/react) |
| Backup compression | Archiver 7 + Extract-Zip 2 |
| Icons | Lucide React |
Security Model
ServerPilot V2 was designed with renderer isolation as a first-class requirement, not an afterthought. The architecture prevents renderer-side code from accessing the Node.js environment or the filesystem directly.
BrowserWindow is created with the following hardened options in electron/main.js:
electron/preload.js. The bridge exposes a window.serverPilot object with two methods — invoke and on — that only accept channels from a hard-coded allowlist. Any attempt to call an unlisted channel throws an error immediately:
- Restricted filesystem access: The File Manager validates server paths before performing any operation and blocks navigation to Windows system directories.
- No
webviewtag: ThewebviewTag: falseoption prevents any embedded webview from being created. - Popup blocking: A
setWindowOpenHandlerreturning{ action: 'deny' }prevents the app from spawning new browser windows. - Runs as
asInvoker: The installer requests no elevated privileges, so ServerPilot never runs as Administrator.