Profile
Back to NewsBack
GitHub Trending 4 min
Reader Mode
MythicalLTD/FeatherPanel: Reimagining the Hosting Industry

MythicalLTD/FeatherPanel: Reimagining the Hosting Industry

16 hours ago

🪶 FeatherPanel

Open-source game server management fast, secure, and built for operators.


Frontend</a> Backend</a> Async Runner</a> Installer</a> Developer Docs</a>


License</a> Release</a> Stars</a> Issues</a> Discord</a> Last Commit</a>


⚠️ Development branch

🚨

Do not run develop in production.

This branch ships experimental features that may be unstable, incomplete, or unsafe. For live environments, install a stable release and follow the official docs.


🧭 Quick navigation

📖 Documentation 🧩 Developer reference 💬 Community

🏗️ Stack

Layer Technology Path
🐘 Panel API PHP 8.5 backend/
⚛️ Web UI Next.js · React · TypeScript frontendv2/
🦀 Async jobs Rust (async-runner) runner/
📦 Installer Bash installer/

Docker images for the backend, frontend, and async runner are published through the release workflows listed below.


📚 icanhasfeatherpanel public developer docs

icanhasfeatherpanel is FeatherPanel’s static developer reference. No running panel is required to browse it.

What’s included


| Section | Contents | | ------------------------ | ---------------------------------------------------------------------------------------------------- | | 🧩 Plugins | Full Markdown guides for building addons (conf.yml, backend, frontend, SDK, packaging, AI recipes) | | 🧭 Pages | Every frontend Next.js route/slug (pages/all.json) for UI navigation guidance | | 🧩 Widgets | Injection points as HTML + .md + .json | | ⌨️ CLI | All featherpanel / php cli commands + production usage (cli/usage.md, cli/all.json) | | ⚙️ Settings | Admin settings keys, types, options, categories from SettingsController (settings/all.json) | | 🧰 Installer | install.bash flags, menus, automation env vars (installer/guide.md) | | 🔐 Permissions | Every permission node as HTML + .md + .json (all.json) | | 📡 Events | Plugin hooks as HTML + .md + .json (all.json) | | 🔌 API reference | Redoc UI + raw openapi.json | | 🧠 RAG index | catalog.json + llms.txt listing every machine-readable doc | | 🔑 OAuth2 playground | OAuth2 docs (live API calls still need a panel) |

🌐 Live site (GitHub Pages)


https://mythicalltd.github.io/FeatherPanel/icanhasfeatherpanel/

Plugin authoring (Markdown + AI index):

https://mythicalltd.github.io/FeatherPanel/icanhasfeatherpanel/plugins/

RAG / machine-readable index:

  • https://mythicalltd.github.io/FeatherPanel/icanhasfeatherpanel/rag/
  • https://mythicalltd.github.io/FeatherPanel/catalog.json
  • https://mythicalltd.github.io/FeatherPanel/llms.txt
Examples for crawlers: …/pages/all.json, …/cli/all.json, …/cli/usage.md, …/settings/all.json, …/installer/guide.md, …/permissions/all.json, …/events/all.json, …/widgets/index.json, …/api/openapi.json, …/plugins/ai-guide.md.

🛠️ Build locally


Hand-authored inputs live in frontendv2/icanhas/ (plugin Markdown, auth guides, assets, schemas). One command — pnpm export:docs — builds the entire public/icanhasfeatherpanel/ tree (widgets, pages, permissions, events, API + OpenAPI, CLI, settings, installer, plugins/auth indexes, RAG). That output is gitignored and produced at ship time for both GitHub Pages (pnpm build:public-docs) and Docker/panel images (host export:docs then frontendv2 image build, or pnpm build:with-docs / make frontend).

# 1. Generate OpenAPI from PHP controller annotations
cd backend
COMPOSER_ALLOW_SUPERUSER=1 composer openapi

2. Export docs + assemble static GitHub Pages site

cd ../frontendv2 pnpm install pnpm build:public-docs

Output lands in ../docs-site/

Serve it with any static file server, e.g.:

python3 -m http.server 8080 --directory ../docs-site

For a normal panel image / local Next build that should include /icanhasfeatherpanel/:

cd frontendv2
pnpm build:with-docs   # export:docs then pnpm build

Optional environment variables for build:public-docs:

| Variable | Purpose | | ----------------- | -------------------------------------------------------------------------------------- | | DOCS_OUTPUT_DIR | Output directory (default: docs-site/) | | DOCS_BASE_PATH | URL prefix for GitHub Pages project sites (CI sets /FeatherPanel from the repo name) | | OPENAPI_JSON | Path to the generated OpenAPI file |


🔄 CI & workflows

Workflow Purpose
frontend.yml Builds the Next.js panel UI
backend.yml PHP lint, migrations, and backend tests
runner.yml Builds and tests the Rust async runner
shell-lint.yml ShellCheck + syntax validation for the installer
docs-pages.yml Generates icanhasfeatherpanel (not committed) + OpenAPI and deploys the static site to GitHub Pages
docker-dev.yml Dev Docker images → GHCR (develop)
docker-release.yml Release Docker images on version tags
docker-oci-release.yml OCI release artifacts
codeql.yml Security analysis (JS/TS)
dependency-review.yml Flags vulnerable dependency changes in PRs

📊 Code statistics

_Last updated: 2026-10-19T11:10:54.542Z_

| Extension | Files | Lines | | --- | ---: | ---: | | .php | 791 | 196,569 | | .tsx | 632 | 182,581 | | .ts | 216 | 26,925 | | .json | 19 | 18,341 | | .yaml | 5 | 7,763 | | .rs | 17 | 3,641 | | .sql | 221 | 3,549 | | .yml | 26 | 2,947 | | .css | 6 | 813 | | Total | 1,933 | 443,129 |


🚀 Try it (stable installer)

These commands install the latest stable build ideal for evaluation, not for running develop in production.

🐧 Linux 🪟 Windows
curl -sSL https://get.featherpanel.com/stable.sh | bash

PowerShell

iwr https://get.featherpanel.com/stable.ps1 | iex

CMD

powershell -ExecutionPolicy Bypass -Command "iwr https://get.featherpanel.com/stable.ps1 | iex"

After installation


  1. Register the first account it becomes the admin automatically.
  2. Follow the configuration docs.
  3. Report bugs on GitHub Issues.

🤝 Contributing

Contributions are welcome. Please read the contributing guide and code of conduct before opening a pull request.


📄 License

FeatherPanel is licensed under the GNU Affero General Public License v3.0.


Made with ❤️ by Mythical Systems



Documentation  ·  Developer docs  ·  Discord  ·  Issues  ·  Releases

Chat with me