# The Cloudlace Code of Conduct

**Version:** 1.0.0

The Cloudlace community is based on the shared values of _quality, integrity,_ and _respect._ All of these values are 
inalienable and of equal importance. As a contributor, we expect you to do your best to act consistently with them and
to help fix what was broken when you fail.

## QUALITY

* **Write quality code.** Make it as clean, readable, and understandable as can. Write tests. Document it where intent is
unclear.
* **Help others write quality code.** Provide constructive criticism when reviewing requests. Suggest improvements. When 
you see a problem, log it and fix it, or bring it up so others can fix it.
* **Help keep the project on track.** If you discover a way the project could better serve its users, suggest it to the
maintainers. This could be a new feature, an architectural change, or even removal of a misfeature. 

## INTEGRITY

* **Be transparent.** Do not accept responsibilities you're not able to fulfil. If circumstances change and you have to give
up a responsibility, do so early rather than late. If you're unsure about something, ask for help.
* **Be truthful.** Communicate both the strengths and the deficiencies of this project honestly. When asked questions, put
the questioner's needs before yours or the project's. 
* **Be courageous.** If you see a difficult problem, raise it and do your best to solve it, especially if you are near the
source of the problem.

## RESPECT

* **Respect each other** as contributors, users, and, above all, as human beings. 
* **Assume positive intent.** Misunderstandings happen and sometimes we say or do things that offend without meaning to.
* **Recognise and clear up misunderstandings** directly between the people concerned before they become problems.
* **Apologise** when you screw up, and accept apologies when others do.
* **Never get personal.** Intentional personal attacks are entirely unacceptable, and if you're the kind of person who
harasses or discriminates then we can do without your contributions.

## Applicability

This code of conduct applies to all activities related to the project.

## Enforcement

In case of violations of this Code of Conduct that cannot be resolved directly between the people concerned, report 
them to the project maintainers. If you want to remain anonymous, please state it in your report. When we receive such
reports, we will:

* Contact the people concerned to get as much of the full story as we can.
* If possible, mediate in order to find a resolution acceptable to all parties.
* If a mediated solution is not possible, we will find some other resolution consistent with our values. This may 
include sanctioning the violating party, such as by issuing warnings, removing them from any position of responsibility
they may hold, or refusing their contributions altogether.