# Contributing

I want to first thank you for your interests in contributing to the Trojan project. Your contributions are much appreciated. To ensure an effective and efficient communication environment, here are some guidelines you should adhere to when you are considering contributing.

## Issues

Issues in this repository are for bug reports and feature requests, and for these purposes **only**. Irrelevant content, such as usage problems or server configuration issues, should not be discussed here. The developers will, at their discretion, either answer or ignore and close this kind of issues without any notice. The **required** communication language in this repository is English.

If you would like to file a bug report, you **must** use the bug report template and follow the instructions inside it. If you do not do so, or if the problem you reported is not considered by the developers a bug, your issue might be closed immediately.

If you would like to file a feature request, you also **must** use the feature request template and follow the instructions inside it. Note that we are trying to keep this project as small as possible because it is the core of the trojan ecosystem and will be included in other projects. For a feature to be considered, make sure that the feature you request is **really necessary** to be included in this very project. Also, we will not consider adding a dependency to the project unless it is **absolutely necessary**. If you do not do the above, your issue might be closed immediately.

## Pull Requests

Pull requests are very welcomed. However, due to the reasons we just talked about, we will only accept features that are **really necessary** for this project. Bug fixes and security-related fixes have more chances to be reviewed by the developers.

For contributors who make frequent and high-quality contributions, there is a chance that they'll be invited to join our organization.
