MCPcopy Index your code
hub / github.com/calagopus/panel

github.com/calagopus/panel @release-1.0.11

Chat with this repo
repository ↗ · DeepWiki ↗ · release release-1.0.11 ↗ · + Follow
4,712 symbols 16,215 edges 1,463 files 81 documented · 2%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Calagopus Logo

Calagopus Panel

Rust License GitHub issues GitHub stars Discord

A modern game server management panel, rebuilt from the ground up in Rust.

Calagopus is a ground-up reimplementation of Pterodactyl Panel in Rust. It keeps what made the original great - secure, container-based game server management - while aiming for better performance, a refreshed UI, more features, and a cleaner extension model on both the frontend and backend. If you already run Pterodactyl or Pelican, there is a supported migration path.

Calagopus dashboard

Features

  • Rust backend - a fast, efficient backend built on Tokio and Axum.
  • Modern frontend - React, Mantine, and Tailwind for a clean, responsive UI.
  • Extensible by design - first-class extension systems for backend and frontend, no hacky patches or overrides, real plugin APIs.
  • Egg compatible - reuses Pterodactyl-style eggs, including a Rust port of Laravel's validation rules.
  • Migration friendly - import your existing setup from Pterodactyl or Pelican.

Installation

Full instructions live in the documentation.

Roadmap

Tracked publicly here:

Project Structure

Repository layout

  • frontend/ - The frontend of the panel, built with React, Mantine, and Tailwind.
  • extensions/* - Frontend extensions, such as themes and plugins.
  • backend/ - The backend of the panel, built with Rust and Axum.
  • backend-extensions/* - Backend extensions, such as auth providers and database drivers.
  • database/ - Database migrations using Drizzle.
  • database-migrator/ - A tool to run database migrations, built with Rust and SQLx.
  • shared/ - Shared code between backend parts, mainly relevant for extensions.
  • wings-api/ - An auto-generated API client for the Wings API, built with Rust.
  • generator-src/ - The source for the API generator, written in TypeScript.
  • rule-validator/ - A semi-port of Laravel's validation rules in Rust for use with eggs.
  • schema-extension/
  • core/ - Core library for the schema extension system.
  • derive/ - A proc macro to derive schema extensions.

Contributing

Contributions are welcome. Open an issue to discuss larger changes first, and check the Discord if you want to chat through an idea before writing code.

Acknowledgments

Calagopus builds on the ideas and ecosystem of Pterodactyl and Pelican. Thanks to those projects and their communities.

License

See LICENSE.

Star History

Star History Chart

Extension points exported contracts — how you extend this code

Registry (Interface)
(no doc) [93 implementers]
frontend/extensions/shared/src/registries/index.ts
ValidateRule (Interface)
(no doc) [54 implementers]
rule-validator/src/lib.rs
CliCommand (Interface)
(no doc) [27 implementers]
shared/src/extensions/commands.rs
Window (Interface)
(no doc)
frontend/src/vite-env.d.ts
Extendible (Interface)
(no doc)
schema-extension/core/src/lib.rs
TranslationContextType (Interface)
(no doc) [1 implementers]
frontend/extensions/shared/src/translation.ts
ParseValidationRule (Interface)
(no doc) [54 implementers]
rule-validator/src/lib.rs
SettingsSerializeExt (Interface)
(no doc) [9 implementers]
shared/src/extensions/settings.rs

Core symbols most depended-on inside this repo

t
called by 3205
frontend/src/providers/TranslationProvider.tsx
ok
called by 1078
shared/src/response.rs
map
called by 644
shared/src/models/role.rs
with_status
called by 621
shared/src/response.rs
get
called by 450
shared/src/cache.rs
set
called by 420
shared/src/models/mod.rs
useTranslations
called by 397
frontend/src/providers/contexts/translationContext.ts
nest
called by 314
shared/src/extensions/settings.rs

Shape

Function 1,857
Method 1,548
Class 970
Interface 269
Enum 68

Languages

Rust63%
TypeScript37%

Modules by API surface

wings-api/src/client.rs83 symbols
shared/src/models/mod.rs83 symbols
shared/src/models/server/mod.rs60 symbols
rule-validator/src/rules.rs58 symbols
shared/src/cap/mod.rs49 symbols
shared/src/models/server_backup/mod.rs48 symbols
shared/src/models/nest_egg.rs44 symbols
shared/src/models/user/mod.rs40 symbols
shared/src/models/node/mod.rs36 symbols
shared/src/settings/mod.rs35 symbols
shared/src/models/backup_configuration.rs35 symbols
shared/src/models/egg_configuration.rs34 symbols

Datastores touched

(mysql)Database · 1 repos
panelDatabase · 1 repos

For agents

$ claude mcp add panel \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page