Contributing
How to contribute to FeatherPanel, FeatherWings, FeatherQuilld, FeatherCli and these docs. Repositories, local setup, lint and test commands, pull requests.
On this page
FeatherPanel is developed in the open by MythicalSystems and contributors. Bug reports, translations, docs fixes and code are all welcome.
Repositories
| Project | Repository | Stack |
|---|---|---|
| Panel | MythicalLTD/FeatherPanel | PHP backend, Next.js frontend, Rust async runner, TypeScript MCP server |
| FeatherWings | MythicalLTD/FeatherWings | Go |
| FeatherQuilld | MythicalLTD/FeatherQuilld | .NET 10 |
| FeatherCli | MythicalLTD/FeatherPanel-CLI | .NET 10 |
| Website and docs | MythicalLTD/FeatherPanel-Website | Astro, Tailwind, daisyUI |
Report a bug
Open an issue in the repository of the affected component. Include the version, install method (Docker or source),
OS, the steps to reproduce and a log link from featherpanel logs or featherwings diagnostics. Report security
problems privately instead; see Security.
Panel development
The panel repository has a makefile with the common tasks:
| Command | What it does |
|---|---|
make install | Installs frontend, backend (Composer) and MCP dependencies |
make lint | Runs PHP CS Fixer and PHPCS on the backend, ESLint and Prettier on the frontend |
make test | Runs the backend PHPUnit tests |
make frontend | Production frontend build |
make runner | Release build of the Rust async runner |
For the frontend, run pnpm dev in frontendv2. It starts Next.js on 127.0.0.1 together with the MCP server, and
proxies /api, /attachments, /addons and /pma to a backend on localhost:8721, the port FrankenPHP uses on a
source install. docker-compose.v2.git.yml builds every image from your checkout if you prefer containers.
The frontend build also runs translation and hardcoded-text scans. UI strings go in frontendv2/public/locales/en.json
and are referenced by key, so the build fails if you add visible text without a translation key.
FeatherWings
make build # build the binary
make test # run the Go tests
make debug # build and run with debug logging
FeatherQuilld
make build # host and sample plugins
make run # run the daemon with CONFIG_FILE=config.yml
make configure # interactive node setup
FeatherCli
dotnet build
dotnet run -- --help
Docs and website
These pages are Markdown files in src/content/docs of the website repository. Use the Edit this page on GitHub link at the
bottom of any page. Rules for docs changes:
- Check every fact against the code and list the files you used in the page’s
sourcesfrontmatter. - Give each page a unique
title,seoTitleanddescription. - Run
pnpm build. It fails on any broken internal link or anchor.
Pull requests
- Fork the repository and create a branch from the default branch.
- Keep one change per pull request and describe what you tested.
- Run the lint and test commands above before you push.
- Follow the code of conduct.