Skip to content

Repository files navigation

Logo

Squad Aegis

A comprehensive control panel for Squad game server administration

Notice

The project is currently in the early stages of development and is not ready for production use. Expect breaking changes and bugs as I work on making this stable and not a bunch of ai written spaghetti code from the PoC.

Overview

Squad Aegis is an all-in-one control panel designed to manage multiple Squad game servers efficiently. Whether you're running a single server or a complex cluster, Squad Aegis provides a centralized interface to keep everything under control.

Acknowledgments

See Acknowledgements for more details.

Features

Core Features

  • Multi-Server Management: Central hub allowing supervision and control of multiple servers from a single interface.
  • Role-Based Access: Define specific permissions for users to ensure only authorized actions are executed.
  • RCON Interface: Engage with server commands using a user-friendly web-based interface.
  • Audit System: Detailed logging of administrative activities for transparency and security.
  • Plugin Architecture: Extend functionality with a modular plugin system, allowing for custom features and integrations.

Screenshots

Dashboard

Nix

This repository ships a flake (flake.nix).

nix run github:Codycody31/squad-aegis   # run the server (frontend embedded)
nix build .#squad-aegis                  # build the server binary
nix build .#squad-aegis-web              # build only the static frontend
nix develop                              # dev shell: go, pnpm, protoc, golangci-lint…

Deploy on NixOS via the exported module:

{
  inputs.squad-aegis.url = "github:Codycody31/squad-aegis";

  # In your NixOS configuration:
  imports = [ squad-aegis.nixosModules.default ];
  services.squad-aegis = {
    enable = true;
    openFirewall = true;
    settings = {
      APP_URL = "https://aegis.example.com";
      DB_HOST = "127.0.0.1";
      DB_NAME = "squad-aegis";
      DB_USER = "squad-aegis";
    };
    # Secrets (DB_PASS, INITIAL_ADMIN_PASSWORD, S3 keys) — kept out of the store:
    environmentFile = "/run/secrets/squad-aegis.env";
  };
}

The full set of settings keys mirrors .env.example.

Contributing

We welcome contributions!

Support

For help and support, you can refer to the resources below:

License

Squad Aegis is licensed under the Gnu General Public License v3.0 (GPL-3.0). See the LICENSE and NOTICE files for more details.

About

A comprehensive control panel solution for administrating multiple Squad game servers in one place.

Topics

Resources

Stars

14 stars

Watchers

1 watching

Forks

Releases

Used by

Contributors

Languages