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

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

Kanboard is not perfect but there are 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 requests)
- 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 provider)

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 files 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.
- A smaller pull-request is easier to review and faster it will be merged.
- Make sure the [unit tests pass](tests.markdown).
- Respect the [coding standards](coding-standards.markdown).
- 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 :)
