josh be7f6c77c1
CI / checks (push) Successful in 6m13s
Sign agent 1.10.1 release (Refs #155)
2026-10-14 12:38:02 -04:00

Electric Cherry

A self-hosted dashboard for managing Plutonium T5 and T6 Zombies servers. Electric Cherry handles your fleet, game files, releases, and maintenance from one web interface. Game servers run on your hosts using Docker, Plutainer, and a small Python agent.

Fleet overview showing sample T5 and T6 lobbies, player counts, and match rounds

Fleet overview with sample data.

Features

  • Launch individual servers or saved collections of maps and lobbies.
  • Monitor players, host capacity, match history, and leaderboards.
  • Manage scripts, plugins, and configuration with beta testing and rollback.
  • Queue maintenance around active games and scale spare lobbies with opt-in policies.
  • Control access with administrator, operator, and viewer accounts.

Getting started

You'll need Docker Compose for the controller, an HTTPS reverse proxy, and Debian 12 or 13 amd64 game hosts. Bring your own game files and Plutonium server keys.

cp .env.example .env
openssl rand -hex 32

Edit .env: use the generated secret for EC_SETUP_TOKEN, set EC_PUBLIC_URL to your HTTPS address, and choose a persistent EC_DATA_DIR. Then start the controller and proxy your HTTPS address to port 3000:

docker compose up -d --build

Open the dashboard and create your first administrator with the setup token. Remove the token from .env afterward and recreate the controller with docker compose up -d.

  1. Upload your T5 or T6 folder, including DLC, under Releases → Game files.
  2. Add a machine under Fleet → Hosts and run its generated enrollment command.
  3. Save your Plutonium keys under Admin → Keys.
  4. Wait for host setup to finish, then launch a server or collection.

See the setup guide for telemetry, storage, and the first launch. Host agents connect outbound over HTTPS; the controller doesn't need a Docker socket or direct access to your game-server files.

Documentation

Development

The controller uses SvelteKit, TypeScript, and SQLite. The host agent uses the Python 3 standard library. For local development, install Node.js 22.13+ and Python 3:

npm ci
export EC_SETUP_TOKEN=$(openssl rand -hex 32)
export BETA_ARCHIVE_DIR=./data/beta-archive
EC_AUTH_ALLOW_HTTP=true npm run dev

Open http://localhost:3000 and use the setup token from your shell. The local database defaults to ./data/cherry.db; keep it separate from production data. npm run dev packages the downloadable agent before starting the server.

npm run lint
npm run check
npm test
npm run test:agent
npm run build

Run npm run format to apply the repository's Prettier formatting.

S
Description
Electric Cherry manages T5 and T6 Plutonium Zombies servers through its own host agents.
Readme
30 MiB
Languages
TypeScript 65.7%
Svelte 23.2%
Python 9.9%
JavaScript 0.5%
Shell 0.5%
Other 0.2%