Skip to content

Features

Features

Server Management

FeatureDescription
Java & BedrockBoth Minecraft editions supported
Multiple serversRun as many as hardware allows, isolated containers
All server typesVanilla, Paper, Forge, Neoforge, Fabric, Purpur, GTNH, CurseForge, Modrinth and Feed The Beast (FTB) modpacks
Any version1.8 to latest, snapshots included
TemplatesPre-configured: Survival, Creative, SkyBlock, PvP, Bedrock presets, and Paper cross-play
Java defaultsGlobal defaults for new Java servers (offline mode, resources, backup switch)
Resource limitsSet RAM, CPU per server
Clone serverDuplicate a server's configuration under a new ID (world data and files are not copied)

Real-time Monitoring

FeatureDescription
DashboardStatus cards, resource usage at a glance
Live logsStreaming, errors highlighted, searchable
Log exportDownload the last 10,000 log lines as a .log file from the Logs tab
StatsCPU%, RAM%, player count, uptime
HistoryPer-server CPU/RAM graphs (1h–72h) in the Metrics tab, sampled every minute with 7-day retention
AlertsOpt-in Discord alerts per server: unexpected server down, and sustained high CPU/RAM above configurable thresholds (Metrics tab; requires the Discord webhook from Settings > Integrations)

Server Control

FeatureDescription
Basic controlsStart, Stop, Restart, Delete
ConsoleRCON (Java) or send-command (Bedrock)
Quick actionsSave world, toggle whitelist, set time/weather, broadcast
Scheduled tasksAuto restarts and scheduled console commands, per server in the Tasks tab. Schedule by fixed interval or standard 5-field cron expression (e.g. 0 4 * * * = daily at 04:00, backend timezone)

Roles and Access Control

This is the first phase of Minepanel roles.

FeatureDescription
ADMIN roleFull panel access without permission restrictions
USER roleAccess limited by explicit permissions
manageUsers permissionLets delegated operators manage users, invitations, and audit access without full admin rights
Server accessAll servers or selected server assignments
Logs vs consoleSeparate permissions for viewing logs and sending commands
File accessSeparate permissions for global files and per-server files
InvitationsNew users join through invitation links, with optional SMTP delivery
Audit logFilterable activity history for account, invitation, and server actions

Authorization model

  • The frontend can hide or show sections for convenience, but the backend is the real permission boundary.
  • Minepanel keeps authentication in httpOnly cookies and does not rely on localStorage for authorization.
  • The current user/session can be cached briefly in memory only to reduce repeated calls such as /auth/me or /users/one.
  • Every protected backend route still resolves the current user and re-checks the required permission before returning data or executing the action.

Audit coverage

The current audit phase includes:

  • login
  • invitation creation, copy, and acceptance
  • password changes
  • email change request and confirmation
  • user access updates and deletion
  • server configuration saves
  • server start, stop, and restart
  • console command execution

Player Management

FeatureDescription
Online playersView, kick, ban, change gamemode, teleport
WhitelistAdd/remove players
OperatorsManage OPs from panel
Ban listView reasons, unban

Mod & Plugin Support

FeatureDescription
ModrinthAuto-download, dependency resolution
CurseForgeMods and modpacks
CombinedUse both simultaneously
In-panel searchSearch and add mod slugs/IDs directly from the Mods tab
Cross-play templateOne-click Paper preset with Geyser, Floodgate, ViaVersion, and UDP port 19132

→ Details: Mods & Plugins

File Management

Built-in browser for each server under servers/<id>/mc-data:

  • Upload/download files
  • Edit configs (syntax highlighting)
  • Create/delete/rename
  • Drag & drop support

Common paths:

  • Worlds source library for world switching: servers/<id>/worlds/
  • Shared World Library for all servers: servers/.world/worlds/
  • Active level data: mc-data/<LEVEL>/
  • Java mods: mc-data/mods/
  • Java plugins (Paper/Spigot/Purpur/etc): mc-data/plugins/
  • Core config files: mc-data/server.properties, mc-data/eula.txt

Operational notes:

  • Uploading/changing worlds, mods, plugins, and most configs usually requires restart.
  • World switching supports folders with level.dat and archives (.zip, .tar, .tar.gz, .tgz).
  • WORLD clone source is mounted read-only by Minepanel to avoid accidental source overwrites.
  • World Library includes Discover Worlds to search CurseForge worlds and import remote ZIP/TAR URLs directly into servers/.world/worlds/.

Backups

FeatureDescription
AutomaticSchedule daily/weekly
ManualOne-click backup
RestoreSelect and restore
DownloadGet backup files

Backup configuration is available in Advanced -> Backup (Java servers):

  • backupMethod: tar, rsync, restic, rclone
  • backupInterval, backupInitialDelay
  • backupPruneDays, backupDestDir, backupExcludes
  • backupHostDir: host path where backups are physically stored. Empty uses the global BACKUP_BASE_DIR or the default ${BASE_DIR}/servers/<id>/backups
  • backupOnStartup

Practical defaults:

  • backupMethod=tar
  • backupInterval=24h
  • backupPruneDays=7
  • backupDestDir=/backups

If you only need local compressed backups, start with tar. Use restic when you want encrypted, deduplicated backups on remote storage.

Cloud backups (S3-compatible)

Selecting backupMethod=restic shows a Restic repository section where you configure a remote destination. Any S3-compatible provider works:

ProviderRepository example
AWS S3s3:https://s3.amazonaws.com/my-bucket/minecraft
MinIOs3:https://minio.example.com:9000/minecraft-backups
Backblaze B2s3:https://s3.us-west-002.backblazeb2.com/my-bucket
Wasabis3:https://s3.wasabisys.com/my-bucket
Local path/backups/restic (stays on the host backups mount)

Fields:

  • Repository: restic repository URL. s3: repositories also need the access/secret key fields.
  • Repository password: encrypts the repository. Store it somewhere safe — without it snapshots cannot be restored.
  • Retention policy: restic forget flags applied after each backup (default --keep-within 7d, e.g. --keep-daily 7 --keep-weekly 4).

The panel lists existing snapshots in the same section (the backup sidecar must be running).

Credentials on disk

Restic credentials are written to the server's generated docker-compose.yml under ${BASE_DIR}/servers/<id>/ (same model as the RCON password). Use a dedicated bucket and access keys scoped to it.

Manual restore (until one-click restore ships):

bash
# 1. List snapshots
docker exec <serverId>-backup restic snapshots

# 2. Stop the server from the panel, then restore into the data volume
docker exec <serverId>-backup restic restore latest --target /data

/data inside the backup container is the server's mc-data directory. Note the default /data mount is read-only (:ro); for a restore, run a one-off container with the same repository env vars and a writable mount instead:

bash
docker run --rm \
  -e RESTIC_REPOSITORY=... -e RESTIC_PASSWORD=... \
  -e AWS_ACCESS_KEY_ID=... -e AWS_SECRET_ACCESS_KEY=... \
  -v ${BASE_DIR}/servers/<serverId>/mc-data:/data \
  restic/restic restore latest --target /

Configuration

Edit from UI:

  • Server name, MOTD
  • Max players, difficulty, game mode
  • View distance, PVP, command blocks
  • Spawn protection radius (Java, SPAWN_PROTECTION; 0 disables it)
  • JVM arguments, extra flags

Server Resources (Java)

In Resources tab:

  • Memory/CPU: set INIT_MEMORY, MAX_MEMORY, and CPU limits per server
  • JVM Options: use JVM_OPTS, JVM_XX_OPTS, JVM_DD_OPTS, EXTRA_ARGS
  • Advanced Runtime: timezone, auto-stop, auto-pause, rolling logs

Recommended approach:

  1. Set only INIT_MEMORY and MAX_MEMORY first.
  2. Enable Aikar flags if you do not have a custom JVM tuning profile.
  3. Change JVM_XX_OPTS only when you have measured a performance issue.

Other

FeatureDescription
Multi-languageEN, ES, NL, DE, FR, PL, RU, PT
Multi-archx86_64, ARM64 (Pi, Apple Silicon)
Discord webhooksServer event notifications
MC Proxy RouterSingle port for Java servers via hostname
End Portal expeditionOptional desktop-only 3D easter egg in Settings > Danger Zone; find and click the portal to return

Edition Comparison

FeatureJava EditionBedrock Edition
Server TypesVanilla, Paper, Forge, etc.Vanilla only
Default Port25565 (TCP)19132 (UDP)
CommandsRCON consolesend-command (via logs)
Proxy SupportYes (mc-router)No
Mods/PluginsFull supportAddons/Behavior Packs
BackupsFull supportFull support

Bedrock Commands

Bedrock servers use send-command instead of RCON. Command output appears in server logs rather than returning directly.

Coming Soon

  • Export logs from the log viewer
  • Dedicated server.properties editor with validation
  • Cron-style scheduling (specific times) for scheduled tasks
  • Bedrock console commands

→ Full roadmap: Roadmap

Released under the MIT License. · Anonymous, cookieless analytics (self-hosted Umami).