Welcome to the Pelican project! We are excited to have you contribute to our open-source project. This guide will help you get started with setting up your development environment, understanding our coding standards, and making your first or next contribution.
To start contributing to Pelican Panel, you need to have a basic understanding of the following:
- Fork the Repository
- Clone your Fork
- Install Dependencies (PHP modules & composer, and run
composer install
) - Configure your Environment (via
php artisan p:environment:setup
) - Set up your Database (via
php artisan p:environment:database
) and run Migrations (viaphp artisan migrate --seed --force
) - Create your first Admin User (via
php artisan p:user:make
) - Start your Webserver (e.g. Nginx or Apache)
As IDE we recommend Visual Studio/ Visual Studio Code (free) or PhpStorm (paid).
To easily install PHP and the Webserver we recommend Laravel Herd. (Windows & macOS)
The (paid) Pro version of Laravel Herd also offers easy MySQL and Redis hosting, but it is not needed.
We use PHPStan/ Larastan and PHP-CS-Fixer/ Pint to enforce certain code styles and standards.
You can run PHPStan via \vendor\bin\phpstan analyse
and Pint via \vendor\bin\pint
.
From your forked repository, make your own changes on your own branch. (do not make changes directly to main
!)
When you are ready, you can submit a pull request to the Pelican repository. If you still work on your pull request or need help with something make sure to mark it as Draft.
Also, please make sure that your pull requests are as targeted and simple as possible and don't do a hundred things at a time. If you want to add/ change/ fix 5 different things you should make 5 different pull requests.
Note: For now we only accept pull requests that handle existing issues!
Your pull request will then be reviewed by the maintainers.
Once you have an approval from a maintainer, another will merge it once it’s confirmed.
Depending on the pull request size this process can take multiple days.
- Help: Discord
- Bugs: GitHub Issues
- Features: GitHub Discussions
- Security vulnerabilities: See our security policy.