49 lines
1.6 KiB
Markdown
49 lines
1.6 KiB
Markdown
# Contributing guidelines
|
|
|
|
## When submitting pull requests
|
|
|
|
* Explain your thinking in why a change or addition is needed.
|
|
* Is it a requested change or feature?
|
|
|
|
* Split up multiple unrelated changes in multiple pull requests.
|
|
|
|
* If your PR is for a issue that has not been reported please create an issue and the PR at the same time and reference it in your PR.
|
|
|
|
## Formatting
|
|
|
|
### Follow the current syntax design
|
|
|
|
* Indent type: Spaces
|
|
|
|
* Indent size: 4
|
|
|
|
* Opening curly braces `{` at the end of the same line as the statement/condition.
|
|
|
|
* If, while, do, for, switch, etc. statements should have a space between the statement and the opening parenthesis `(`.
|
|
|
|
* Methods should **not** have a space between the method name and the opening parenthesis `(`.
|
|
|
|
* No hungarian notation. ie. `IInterface` should be `Interface`.
|
|
|
|
## General guidelines
|
|
|
|
* Don't force a programming style. Use object-oriented, functional, data oriented, etc., where it's suitable.
|
|
|
|
* Use descriptive names for variables.
|
|
|
|
* Use comments if not very obvious what your code is doing.
|
|
|
|
* If using the logger functions, be sensible, only call it if something of importance has changed.
|
|
|
|
* Benchmark your code and look for alternatives if they cause a noticeable negative impact.
|
|
|
|
## License
|
|
|
|
* Code submitted to this project shall fall under the same license as the project.
|
|
|
|
* Any code taken from another existing project should maintain the license that comes it AND follow the terms of that license.
|
|
|
|
|
|
## Contact
|
|
|
|
If you have any questions, feel free to join our Discord at [discord.gg/terrarium](https://discord.gg/terrarium) |