Skip to content

The panel ​

The panel is what the desktop app shows. It is one HTML page served by SpawnLoft itself, so it works offline and runs equally well in a browser tab:

bash
spawnloft ui [--port 8770] [--no-open]     # http://127.0.0.1:8770

The SpawnLoft console with server controls and live logs.

Servers ​

Each server is a tab across the top; a server's tools (Plugins, Worlds, Backups, Players, Stats, Schedule, Settings) open from a dock beside its console. Settings and Backups open full width with the console's newest line and error count along the bottom.

ActionBehavior
Add a serverCreate one, which downloads the server and reports real progress, or point SpawnLoft at a folder you already have. Nothing is moved; ports and the RCON password are read from that folder's server.properties.
Rename, reset, deleteRequire typing the server's name. A dialog that only says "are you sure" gets answered reflexively.
Server cardStatus lamp, port, memory and a live uptime.

Added in 1.4

The tabs-and-dock layout and the overview below were added in SpawnLoft 1.4. Earlier versions list servers down the side and show one tool at a time.

Overview ​

The first tab shows every server: state, players, TPS, memory and last backup, with Start or Stop on each card, and how much of the machine's memory the servers may use between them. A Needs attention row collects what wants doing, each with the one button that resolves it:

  • a server that crashed, or was restarted by crash guard, today
  • plugin updates found by the last check
  • a server never backed up, or not backed up in a week
  • a Java too old to start a server

Console ​

FeatureBehavior
Search and filterSearch, filter to warnings or errors, pause, copy, wrap, line numbers, bounded scrollback
Log levelA coloured rail in the gutter, not recoloured text, so ERROR stands out without becoming harder to read
Stack tracesInherit the level of the line above, so filtering to errors shows the whole failure
TextANSI escapes are stripped into clean, searchable text. Long lines scroll horizontally; turn on Wrap to fit them.
ExportSaves a .log beside the server's snapshots, or uploads to mclo.gs after a dialog that says what is in it. See Security.

Plugins and Mods ​

Search and install from Modrinth and Hangar together, each result naming its source, filtered or checked against this server's version, with checksum-verified downloads, an update check, and one-click updates behind a plugins snapshot. Hangar projects that host downloads elsewhere are linked, not installed. Fabric and NeoForge servers get Mods in its place.

The tool manages only what SpawnLoft installed; it records provenance beside the jars. A custom or premium plugin dropped in by hand is never offered a meaningless update and never has its hash sent to anyone. spawnloft plugins <name> lists the full inventory with a source column. Enable and disable rename the jar in place, so a disabled plugin keeps its spot and its config.

Added in 1.4

Plugins lists everything in the folder, hand-added jars included, and when a check finds updates it can install them all behind one snapshot and restart.

Worlds ​

Every world is listed with the active one named. Import a downloaded map from a zip or folder (found however deeply nested, never overwriting), export a world as a zip, switch which world runs, or delete one. Only the active world is included in snapshots.

Backups ​

Take a snapshot at a chosen scope (plugins, worlds, config, standard, full), see every snapshot with size, age and coverage, and restore, verify or delete any of them. Restoring is refused while the server runs, because extracting over files a live server holds open corrupts a world rather than replacing it.

Automatic backups run on a schedule with a retention limit, and the limit only removes snapshots its own schedule produced, never one taken by hand or before a reset. History refreshes every four seconds while visible, including backups made with the CLI. An archive appears only after it and its manifest are complete. See How it works.

Players ​

Everyone the server knows, gathered from operators, bans, the whitelist, the name cache and the world folder, since none of them is a complete list alone. Search, filter to operators or the banned, and op, ban or delete a player's world data. Connected players are marked and sorted first; that has to be asked of the server, because a player's file is not written until they log out. Changes go through the console while the server runs and into its files when it does not.

Stats ​

CPU and memory over the last minute, five minutes, half hour, hour or four hours, sampled every ten seconds. Both scales follow the data, because a fixed 0 to 100% axis draws every ordinary server as a flat line. CPU is a share of all cores; memory is resident process memory, not only the Java heap. History survives a stop and resets on each start. Windows, macOS and Linux collect it; export readings as JSON or CSV to compare runs.

Schedule ​

Nightly backups, a 5 a.m. restart that warns players first, a command on the hour. Tasks run through Windows Task Scheduler, macOS launchd or Linux systemd timers, so they happen whether or not SpawnLoft is open, while you are signed in. See Scheduled work.

Settings ​

SectionContents
ServerThe server.properties fields below, memory, and Java
Server softwareThe running build, with the newest build or a newer Minecraft version offered (Paper, Purpur, Folia, Advanced Slime Paper)
DatabasesConnection details and Create a database. See Databases.
Whole fileserver.properties edited as text: the RCON password stays hidden, managed ports cannot be changed, and the file is snapshotted first
KeySettingTypeRange or valuesDefault
online-modeWho can joinToggleMojang accounts or any nametrue
motdMessage of the dayTextA Minecraft Server
difficultyDifficultyChoicepeaceful, easy, normal, hardeasy
gamemodeDefault game modeChoicesurvival, creative, adventure, spectatorsurvival
max-playersMax playersInteger1 to 100020
pvpPvPToggletrue
white-listWhitelistTogglefalse
view-distanceView distanceInteger2 to 3210
spawn-protectionSpawn protectionInteger0 to 25616

Servers SpawnLoft creates start with online-mode=true, max-players=10 and spawn-protection=0. Writes never disturb another key or a comment.

Added in 1.4

Settings is one form: sections are listed down the side with a dot on any holding an unsaved change, each setting reads Default until the file has it and Changed until saved, and a bottom bar saves, discards, or saves and restarts.

Changing who can join on a world that already has players warns first. Minecraft derives an offline UUID from the player's name and uses the Mojang UUID otherwise, so flipping the setting gives everybody a different identity and orphans permissions, homes and inventories keyed by UUID. The panel reads the world's player data, tells the two kinds of UUID apart by version, and says how many players are affected before you decide.

Databases ​

Settings → Create a database creates a managed MySQL 8.4 LTS or Redis-compatible Garnet database and provides scoped credentials. Databases sit beside servers in the panel with a lamp, a console, start, stop and restart. Plugin configuration is always manual. See Databases.

Preferences ​

The gear opens Preferences.

ItemBehavior
AppearanceClassic, the original palette, or SpawnLoft, matching the website
Data locationsMove the data folder or put servers on another drive
UpdatesUpdate checks and Get beta builds
AI assistantsThe exact MCP configuration for this install. See AI assistants.
Copy diagnosticsVersion, Java, locations, every server's status, the panel log and the last console lines of the selected server. Never includes an RCON password or webhook URL.
FeedbackSomething broke opens a GitHub bug report with version, Java, server status and panel log filled in and puts full diagnostics on the clipboard. A question opens Q&A and An idea opens Ideas. Nothing is sent by SpawnLoft; the browser hop is the consent.
Still working it out?

Find a fix in troubleshooting, or ask the community.

Troubleshooting Ask a question