Guide 2
Install the theme
The dry run prints the whole plan and writes nothing. The real run backs up every file it touches, then prints the command that puts the panel back.
Install it
Enter the package
Unpack the download on the server and change into it. The installer lives at
install_script/install.sh, next to theProductfolder it copies from.shellcd /path/to/nectraui-packageRead the plan with a dry run
Run this first. It writes nothing at all.
shellbash install_script/install.sh --dry-runOn a clean panel the plan looks like this:
dry run, abridged[nectra] package nectra-panel-theme 1.0.0 [nectra] target /var/www/pterodactyl [nectra] upstream pterodactyl 1.15.1 [nectra] install 489 new file(s) [nectra] overwrite 36 stock file(s) [nectra] skip 5 identical file(s) [nectra] orphans 17 stale bundle file(s) [nectra] migrations 19 shipped [nectra] dry run, nothing was changed489 files are new. 36 are stock Pterodactyl files the theme replaces. 5 already match, so they are skipped. 17 stale bundle files from the panel's old frontend are cleaned out, and 19 migrations are waiting to run. Nothing here should surprise you before you commit to it.
Run it for real
shellbash install_script/install.shThe run puts the panel into maintenance mode, writes a backup of every file it is about to touch, copies the payload file by file, runs the migrations, clears the caches, restarts the queue workers, and brings the panel back up. New files are given the owner your panel already uses, so there is no chown to do afterwards. The last thing it prints is the rollback command.
Look at it
Sign in as an administrator. The theme is live on the client area straight away, and the admin sidebar has a new NECTRAUI group with Theme Settings in it, at
/admin/settings/theme.


That first screenshot is the honest starting point. Guide 4 turns it into the demo, setting by setting.
What it will not do to your panel
- No frontend build and no dependency install. The bundle ships compiled, and no PHP dependency file changes, so no dependency manager ever runs.
- No new environment variable, so your environment file is never opened.
- Your environment file,
storage/,bootstrap/cache/,public/.htaccessand existing migrations are refused outright. A manifest that points at one of them stops the run before a byte is written. - Files you changed yourself are reported and left alone unless you pass
--overwrite-modified. Files that already match are skipped, so a second run is a quiet no op.
Panel somewhere other than the default
Point the installer at it. Both the dry run and the real run take the same flag.
bash install_script/install.sh --panel-dir /srv/pterodactylStaying up to date
The admin overview grows a NectraUI box that tells you whether the theme and every installed addon are current. It reads https://nectraui.com/versions.json once an hour, sends nothing about your panel, and can be switched off in Theme Settings. Updating is the same two commands: dry run, then run.
Rolling back
There is no uninstall script. The backup tarball is the way back, and the exact commands are printed at the end of every run, so keep that output. The tarball restores every file that was overwritten and the list beside it names every file that was added. Migrations are not rolled back by that procedure. The package README spells the whole thing out.