Repository navigation
Releases: abhicommands/Minecraft-Server-Panel
Release list
Minecraft Server Panel v3.0.0
Highlights
Minecraft Server Panel 3.0.0 replaces the active Node backend with a Bun 1.4
TypeScript backend and ships the frontend and backend together as a standalone
executable. End users do not need Bun, Node.js, npm, or node_modules.
- Native
Bun.serve,Bun.Terminal, andbun:sqlitebackend. - Embedded React/Vite frontend with same-origin
/apiand/socket.iorouting. - Standalone Apple Silicon macOS and glibc Linux x86_64 archives.
- Interactive installer with automatic JWT generation, bcrypt password setup,
direct-IP HTTP mode, and optional Caddy-managed HTTPS for DNS names. - Streamed uploads, validated ZIP backup handling, and external
panel-data. - Serialized server lifecycle operations, durable process identity markers,
complete process-group cleanup, crash recovery, and transactional update/delete
recovery. - Bun-only development, lockfiles, audits, native smoke tests, benchmarks, and
tag-driven release automation.
Why the Bun rewrite
The primary goal was a self-contained release without Node, npm,
node_modules, node-pty, or better-sqlite3 native-addon installation. The
rewrite also produced measurable gains on the recorded Apple M1 baseline:
| Measurement | Compiled Bun | Legacy Node | Result |
|---|---|---|---|
| Ready time | 43.00 ms | 201.17 ms | 4.68x sooner |
| Idle RSS | 51.13 MiB | 90.55 MiB | 43.5% lower |
| Session validation | 44,808 req/s | 14,300 req/s | 3.13x throughput |
| Empty server list | 39,175 req/s | 11,777 req/s | 3.33x throughput |
| Indexed UUID lookup | 213,862/s | 66,687/s | 3.21x throughput |
| ZIP creation | 87.10 MiB/s | 74.33 MiB/s | 17.2% faster |
| ZIP extraction | 317.22 MiB/s | 637.63 MiB/s | 2.01x slower |
These are application-level measurements from one machine, not a general claim
that Bun beats Node on every workload. The extraction regression is disclosed
deliberately; the Bun path also performs stricter CRC, size, overlap, path, and
symlink validation. The benchmark harness, fixture details, memory figures, and
reproduction commands are in the
benchmark documentation.
Install
Download the archive matching the host, extract it, and run:
./install.shThe installer explains and validates the deployment choice. Java remains a host
requirement for Minecraft servers. Caddy is used only for automatic HTTPS when a
DNS name is selected; direct-IP HTTP mode runs the application without Caddy.
Verify downloads
Download SHA256SUMS beside the selected archive, then run:
shasum -a 256 -c SHA256SUMSEach archive was built and smoke-tested natively in GitHub Actions and has a
GitHub artifact attestation. Back up an existing installation before cutover.
Supported release targets:
- Apple Silicon macOS (
darwin-arm64) - glibc Linux on x86_64 (
linux-x64)
See the full changelog
and installation documentation.
Full comparison: 2.1.0...v3.0.0
Release 2.1.0
Release v2.1.0
What's Changed
- Fixed the zip downloading, if downloading a file that was already a .zip then it wasn't working so fixed that.
- Also fixed the issues with downloading and updating different server types such as Paper, Vanilla, Forge and not just fabric everytime.
Operating Requirements
- curl
- tar
- Node.js 22 LTS (must be v22.x)
- npm
- Java (any version is fine; use the version your server/JAR requires)
- sudo (optional; used to deploy frontend to
/var/www/mc-panel. Without sudo, files go to~/mc-panel-www) - Caddy or any other reverse proxy server such as nginx, apache to setup a reverse proxy server for the frontend.
Installation/update (One-liner)
install-minecraft-server-panel.sh is included for easy installation of the entire stack on a Linux server. It automatically downloads the latest assets and sets up the backend (in ~/Minecraft-Server-Backend) and the frontend (to /var/www/mc-panel if sudo is available, otherwise ~/mc-panel-www).
If already the backend or frontend exists then the script will automatically backup the server-directory and the server-database.
Run:
curl -fsSLO https://github.com/abhicommands/Minecraft-Server-Panel/releases/download/2.1.0/install-minecraft-server-panel.sh
chmod +x install-minecraft-server-panel.sh
./install-minecraft-server-panel.shExample Caddyfile Configuration
# Public IP
https://www.example.com {
root * /var/www/mc-panel
file_server
# The PORT is the port you select for backend in the installation script.
handle_path /api/* {
reverse_proxy localhost:$PORT
}
handle {
try_files {path} /index.html
}
# No CORS needed if your frontend calls /api on THIS same origin
}Release 2.0.1
Release v2.0.1
What's Changed
- Removed MSH config entirely (it caused multiple issues).
- Fixed an upload method vulnerability.
- Added ability to edit startup command flags for the Minecraft server (e.g.,
-XX:+UseZGC) beyond the basic-java -jar server.jar nogui. - Fixed a frontend issue where a new endpoint caused multiple duplicate calls for a specific task.
- General stability improvements and bug fixes.
Operating Requirements
- curl
- tar
- Node.js 22 LTS (must be v22.x)
- npm
- Java (any version is fine; use the version your server/JAR requires)
- sudo (optional; used to deploy frontend to
/var/www/mc-panel. Without sudo, files go to~/mc-panel-www)
Installation (One-liner)
install-minecraft-server-panel.sh is included for easy installation of the entire stack on a Linux server. It automatically downloads the latest assets and sets up the backend (in ~/Minecraft-Server-Backend) and the frontend (to /var/www/mc-panel if sudo is available, otherwise ~/mc-panel-www).
Run:
curl -fsSLO https://github.com/abhicommands/Minecraft-Server-Panel/releases/download/2.0.1/install-minecraft-server-panel.sh
chmod +x install-minecraft-server-panel.sh
./install-minecraft-server-panel.shRelease 2.0.0
Release 2.0.0
What's Changed
- Fixed the update server issue not working
- Updated all packages to the newest stable versions (
node-stream-zip,better-sqlite3, etc.) - Switched frontend to Vite for faster, more responsive builds with modern, actively maintained dependencies (replacing Create React App)
Assets
Minecraft-Server-Panel-Frontend-v2.0.0.tar.gz— static frontend build (dist/contents)Minecraft-Server-Panel-Backend-v2.0.0.tar.gz— server source (tracked files only; nonode_modules)
Install / Upgrade
Frontend → /var/www/mc-panel
sudo mkdir -p /var/www/mc-panel
curl -L <FRONTEND_ASSET_URL> | sudo tar -C /var/www/mc-panel -xzBackend → /opt/mc-panel
sudo mkdir -p /opt/mc-panel
curl -L <BACKEND_ASSET_URL> | sudo tar -C /opt/mc-panel -xz
cd /opt/mc-panel
npm ciEnvironment
- After downloading and uncompressing, create a
.envfile in the server folder with the required values. - Guidance for
.envvariables is inREADME.md.
React build/node repo Release
This release consists the build compilation for the React front end and also consists a compressed node server as well. Release is made for the purpose of creating easier deployments, without requiring to git clone in remote containers/servers.