Contributor Guidelines
======================

How can I help?
---------------

Kanboard is not perfect but there is many ways to help:

- Give feedback
- Report bugs
- Add or update translations
- Improve the documentation
- Writing code
- Tell your friends that Kanboard is awesome :)

Before doing any large undertaking, open a new issue and explain your proposal.

I want to give feedback
-----------------------

- You think something should be improved (user interface, feature request)
- Check if your idea is not already proposed
- Open a new issue
- Describe your idea
- You can also up vote with +1 on existing proposals

I want to report a bug
----------------------

- Check if the issue is not already reported
- Open a new ticket
- Explain what is broken
- Describe how to reproduce the bug
- Describe your environment (Kanboard version, OS, web server, PHP version, database version, hosting type)

I want to translate Kanboard
----------------------------

Kanboard is translated in many languages.
However, translations are not complete, take look at the [translation guide to contribute](http://kanboard.net/documentation/translations).

I want to improve the documentation
-----------------------------------

- You think something is not clear, there is grammatical errors, typo errors, anything.
- The documentation is written in Markdown and stored in the folder `docs`.
- Edit the file and send a pull-request.
- The documentation on the official website is synchronized with the repository.

I want to contribute to the code
--------------------------------

Pull-requests are always welcome, however to be accepted you have to follow those directives:

- **Before doing any large change or design proposal, open a new ticket to start a discussion.**
- If you want to add a new feature, respect the philosophy behind Kanboard. **We focus on simplicity**, we don't want to have a bloated software.
- The same apply for the user interface, **simplicity and efficiency**.
- Send only one pull-request per feature or bug fix, your patch will be merged into one single commit in the master branch.
- Make sure the [unit tests pass](http://kanboard.net/documentation/tests).
- Respect the [coding standards](http://kanboard.net/documentation/coding-standards).
- Write maintainable code, avoid code duplication, use PHP good practices.

In any case, if you are not sure about something open a new ticket.

Tell your friends that Kanboard is awesome :)
---------------------------------------------

If you use Kanboard, spread the word around you.
Tell them that free and open source software are cool :)
