Copyright and Licensing

All contributors to LibreNMS retain copyright to their own code and are not
required to sign over their rights to any other party. Code should be licensed
under the GPLv3 and MUST NOT contain non-GPL Observium code or GPL
incompatible code. To be safe do not view Observium code at all. See
Licensing for more details.

General Guidelines

As a general rule, if you're replacing lines of code with new lines of
code, don't comment them out, just delete them. Commented out code makes
the patch and the resultant code harder to read, and there's no good
reason to it since we can easily get them back from git.

If you're fixing a bug or making another minor change, don't reformat the
code at the same time. This makes it harder to see what's changed. If
you need to reformat it after making the change, do so in a separate
commit.

Please join us in discord if you are able.
Collaborating in real time makes the coordination of contributions easier.

How to Contribute

Using Git gives you step-by-step instructions on
using git to submit a pull request.

Code Structure can help you understand where
specific code exists in LibreNMS.

Creating Documentation It is very
important for the continued improvement of LibreNMS that we have
good documentation. If you see anything that that needs improvement
please submit a pull request to fix it.

Don't be afraid to submit a GitHub Pull Request. We will help you
with anything that needs to be change or suggest ways of improving
your patch. Because the maintainers are volunteers too sometimes
response may be delayed or brief, please be patient or ask for
clarification if needed. Thanks!