mirror of
https://github.com/pelican-dev/panel.git
synced 2025-05-19 22:14:45 +02:00
55 lines
2.9 KiB
Markdown
55 lines
2.9 KiB
Markdown
# Contributing
|
||
|
||
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.
|
||
|
||
## Getting started
|
||
|
||
To start contributing to Pelican Panel, you need to have a basic understanding of the following:
|
||
|
||
* [PHP](https://php.net) & [Laravel](https://laravel.com)
|
||
* [Livewire](https://laravel-livewire.com) & [Filament](https://filamentphp.com)
|
||
* [Git](https://git-scm.com) & [Github](https://github.com)
|
||
|
||
## Dev Environment Setup
|
||
|
||
1. Fork the Repository
|
||
2. Clone your Fork
|
||
3. Install Dependencies (PHP modules & composer, and run `composer install`)
|
||
4. Configure your Environment (via `php artisan p:environment:setup`)
|
||
5. Set up your Database (via `php artisan p:environment:database`) and run Migrations (via `php artisan migrate --seed --force`)
|
||
6. Create your first Admin User (via `php artisan p:user:make`)
|
||
7. Start your Webserver (e.g. Nginx or Apache)
|
||
|
||
As IDE we recommend [Visual Studio](https://visualstudio.microsoft.com)/ [Visual Studio Code](https://code.visualstudio.com) (free) or [PhpStorm](https://www.jetbrains.com/phpstorm) (paid).
|
||
|
||
To easily install PHP and the Webserver we recommend Laravel Herd. ([Windows](https://herd.laravel.com/windows) & [macOS](https://herd.laravel.com))
|
||
The (paid) Pro version of Laravel Herd also offers easy MySQL and Redis hosting, but it is not needed.
|
||
|
||
## Coding Standards
|
||
|
||
We use PHPStan/ [Larastan](https://github.com/larastan/larastan) and PHP-CS-Fixer/ [Pint](https://laravel.com/docs/11.x/pint) to enforce certain code styles and standards.
|
||
You can run PHPStan via `\vendor\bin\phpstan analyse` and Pint via `\vendor\bin\pint`.
|
||
|
||
## Making Contributions
|
||
|
||
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!*
|
||
|
||
## Code Review Process
|
||
|
||
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.
|
||
|
||
## Community and Support
|
||
|
||
* Help: [Discord](https://discord.gg/pelican-panel)
|
||
* Bugs: [GitHub Issues](https://github.com/pelican-dev/panel/issues)
|
||
* Features: [GitHub Discussions](https://github.com/pelican-dev/panel/discussions)
|
||
* Security vulnerabilities: See our [security policy](./security.md).
|