Thank you for considering to contribute to CFF!
Please follow these guidelines. Their purpose is to make both contributing and accepting contributions easier for all parties involved.
There are many ways to contribute, e.g.:
- Write blog posts, tutorials, etc. about CFF
- Review any and all parts of the format and its infrastructure: specifications, libraries, documentation, etc., and submit bug reports, feature requests, suggestions and similar, respectively
- Language polish any prose output, including the specifications
- Create a new, better version of the specifications
- Create new infrastructure, e.g., a library to read CFF files in a new programming language
Please do not use the issue tracker of any CFF repository for user support questions. Instead, if the documentation is not sufficient to help you, please submit an issue against the respective repository, detailing what in the documentation is missing for you to resolve your issue.
Your contribution to CFF is valued, and it should be an enjoyable experience. To ensure this, there is the CFF Code of Conduct, which you are required to follow.
Apart from how you communicate with others, some CFF projects may have specific
technical responsibilities, which are outlined in the project's own guidelines
for contributing. If you cannot find them, please submit an issue in the
respective repository, asking for the addition of a
Your First Contribution
If you are unsure where to begin contributing to CFF, you can start by reviewing the current specifications, as these are the core of CFF. Additionally, look through the open issues in this repository, and see if you can identify one that you would like to work on.
If you have never contributed to an open source project, you may find this tutorial helpful: How to Contribute to an Open Source Project on GitHub.
As of now, there is no Contributor License Agreement for CFF, although perhaps there should be one.
Please fork the repository you want to contribute to, and then make the changes in your fork. Once you are happy and think that your changes should be included in the code base of the project, please note the code of conduct and send a pull request.
How to submit an issue
If you find a security vulnerability anywhere, do NOT open an issue. Email cff- security /at\ sdruskat \dot/ net instead.
Every project/repository should have its own issue template, so that when you create a new issue, you can simply fill it in and everything that is needed to work on your issue will be there.
If no issue template exists, please create an issue for that instead, asking for the addition of an issue template.
How to suggest a feature or enhancement
- How do I contribute to project/repository XYZ?
Every project should have its own guidelines for contributing. If you cannot
find one, please open an issue against the respective repository and ask
for the addition of a
- What should the guidelines to contributing include?
It should link back to this repository's README, pointing specifically to these guidelines as well as the code of conduct as well. Other suggestions for good guidelines can be found here: https://github.com/nayafia/contributing-template.
- These guidelines do not address aspect XYZ! What should I do now?
Please submit an issue here, asking for clarification and addition to the guidelines.