Contributing

Contributing to TIRA

Thank you for considering a contribution to TIRA!

Below, you will find all the information on how you can help, how to get started and what to consider when contributing. Please also have a look TIRA’s Code of Conduct.

Contributions can take many forms, and all are very welcome:

  1. Reporting Bugs

  2. Reporting Vulnerabilities

  3. Suggesting Enhancements and new Features

  4. Contributing Code

  5. Improving the Documentation

Reporting Bugs

Bugs are annoying for everyone, so please help us identify and fix the bug by providing a good bug report.

What is a good Bug Report? A good bug report should contain the expected behavior, the observed behavior, and all the necessary actions you took. Ideally, it should be reproducible, but we understand that this is not always possible. Please make sure to follow these steps before submitting a bug report:

  • Check the Issues Page if others have reported similar problems (also make sure to search the open and the closed issues)

  • Check that you are using TIRAs latest version

  • Read the relevant Documentation to make sure you are experiencing a bug

How do I submit a Bug Report? Bug reports should contain all the relevant information needed for someone else to understand and (hopefully) reproduce your issue. You can report a bug using GitHub Issues as follows:

  1. Make sure you have read “What is a good Bug Report?”

  2. Open a new Bug Issue

  3. Fill in the forms to the best of your abilities and try to describe the reproduction steps as concise as possible (e.g., only include steps that are relevant to the reproduction)

  4. Make sure you do NOT leak any confidential data (e.g., API Keys or Secrets) on accident!

Reporting Vulnerabilities

Vulnerabilities should not be publicly disclosed until they are fixed. Please take a look at our Security Policy for more information.

Suggesting Enhancements and new Features

Is there something that is bugging you (but is not a bug) or a feature you believe should be part of TIRA? Perfect! Please open an Enhancement Issue and make sure to cover the following points to give your idea the best chance of being implemented:

  • Clearly and concisely describe the idea behind the enhancement or feature. The more people have to read, the less they are motivated to read your entire proposal, and the less likely they are to support it.

  • Now that you have people hooked, you can be more elaborate: how (if at all) can the goal be achieved now? How do you envision it to work if your feature request or enhancement is implemented?

  • A picture is worth a thousand words — you may add pictures to show what you envision. This is, of course, not required.

Contributing Code

Code contributions can take many forms… from minor bug fixes, to bigger patches to entirely new features but they are worth nothing if the code is unreadable, unmaintainable or does not fit into TIRAs architecture. If you consider contributing code, please have a look at our Code Guidelines and read our Documentation for Developers. We are very happy about all code contributions and features and with these rules we want to ensure that they can be part of TIRAs future even when the original developer has left TIRAs development.

Improving the Documentation

Documentation is PART OF the software and not a second class citizen. Good documentation simplifies the onboarding process of new programmers and new users. Generally, the same guidelines apply as for contributing code. If you feel like some parts of the documentation are out-of-date or not clear, feel free to create a Documentation Issue after you made sure that the same issue did not exist previously (open or closed).