Documentation

Local development

Develop from a git checkout. Docker Desktop must be running for Compose and for local game containers.

Run the panel

bash
docker compose up -d          # Mongo replica set + Redis
npm install
npm run setup                 # writes .env secrets
npm run db:push               # Prisma schema → Mongo
npm run dev                   # API :4000 and panel :3010

Open http://localhost:3010. The first account is the admin. Node 22+ is required.

Attach a local daemon

  1. 1

    Admin → Locations → create a location

  2. 2

    Admin → Nodes → create a node

    Copy the flt_ token (shown once).
  3. 3

    Add allocations

    0.0.0.0 + 25565 is fine for local testing.
  4. 4

    Configure and start

    bash
    npm run daemon:configure -- --panel-url http://127.0.0.1:4000 --token <flt_token> --node <nodeId>
    npm run dev:daemon

The node turns Online after a heartbeat. Admin → Servers can then create a server. The seeded Generic / Sleep egg uses busybox:1.36.

Useful routes

RouteWhat
/loginSign in / first-admin setup
/Client dashboard (live servers)
/adminLocations, nodes, allocations, nests, eggs, servers, users
/api/v1/healthAPI health (Mongo + Prisma required; Redis reported)

Stack notes

  • Mongoose is the runtime ODM. Prisma owns apps/api/prisma/schema.prisma (types, db push, Studio). Both talk to the same MongoDB.
  • The daemon uses dockerode (Docker Engine API), not the Docker CLI. On Linux, mount /var/run/docker.sock into the daemon image (apps/daemon/Dockerfile).
  • Passwords need at least 10 characters. Sessions last 14 days.