Do you want to contribute to the Hestia Control Panel project? The easiest way to get started is to submit an issue report if you come across a bug or issue. If you're a developer, please feel free to submit a patch/pull request with a fix.
We appreciate all contributions to our project; it is with the help of the open-source community that we are able to build a product that meets users needs.
All pull requests must include:
We ask that you try to follow existing naming schemes and coding conventions as much as possible, and that you please add brief but descriptive comments in your source code to aid other developers in debugging and understanding your code in the future.
When submitting a pull request with multiple smaller commits which are related to the same issue (or file), we ask that you please squash your commits in order to keep the project's commit history clean and easy to follow for other developers.
Development for this project takes place in branches to effectively develop, manage, and test manage new features and code changes, ensuring that that each release meets high quality standards. Our primary branches are as follows:
We ask that you create a new branch for your work based on master or prerelease, depending on the code you are contributing. By doing this, you can submit a pull request with only the necessary commits. Please follow the below naming conventions for your work and submit a pull request when it has been completed. Once reviewed and approved, our development team will merge your code into the primary development branch.
Note: Replace area with Web, DNS, Mail, etc. Replace 000 with the GitHub Issue ID if available, or use a short but descriptive name.
The general flow of our development process is that new features or work begin in a new branch derived from master. Once the work has been completed and reviewed, it is then submitted via Pull Request for further review and inclusion into the main code base. Once a release has reached a point where slated new features have been incorporated and the build has gone through testing and validation, it will then enter a "feature freeze" state where only fixes to the existing functionality will be merged for inclusion and be pushed to the prerelease branch. Once any remaining known issues have been resolved and the build is considered stable, the code is then pushed to release and the cycle starts all over again.
master -> prerelease -> release
Please ensure that all pull requests meet the guidelines listed above; those that do not will be rejected and sent back for review.
If you would like to make a donation to the Hestia Control Panel project to further its development (or if you'd like to buy our developers a lunch), please feel free to do so via PayPal.