# Contributing

Trixi.jl is an open-source project and we are very happy to accept contributions
from the community. Please feel free to
[open issues](https://github.com/trixi-framework/Trixi.jl/issues/new/choose)
or submit patches (preferably as
[pull requests](https://github.com/trixi-framework/Trixi.jl/pulls))
any time. For planned larger contributions, it is often beneficial to get
in contact with one of the principal developers first (see
[AUTHORS.md](AUTHORS.md)).

Trixi.jl and its contributions are licensed under the MIT license (see
[LICENSE.md](LICENSE.md)). As a contributor, you certify that all your
contributions are in conformance with the *Developer Certificate of Origin
(Version 1.1)*, which is reproduced below.

## LLM/AI usage 

PRs which make use of LLMs and AI tools are allowed. However, because an LLM-assisted PR may have different issues than human-only PRs and necessitate different review styles, we request that PRs disclose any LLM contributions. 

As before, all PRs are expected to be of high quality, and when possible, the developers will work with submitters to help achieve this. You are responsible for any code you submit, regardless of whether it was manually written or generated by AI. You should understand and explain the code you submit, as well as existing related code.

We encourage contributors to pre-check their PRs against our [checklist](https://github.com/trixi-framework/Trixi.jl/blob/main/.github/review-checklist.md), for example through manual review, using AI-based tools, or a combination of the two.

## Developer Certificate of Origin (Version 1.1)
The following text was taken from
[https://developercertificate.org](https://developercertificate.org):

    Developer Certificate of Origin
    Version 1.1

    Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
    1 Letterman Drive
    Suite D4700
    San Francisco, CA, 94129

    Everyone is permitted to copy and distribute verbatim copies of this
    license document, but changing it is not allowed.


    Developer's Certificate of Origin 1.1

    By making a contribution to this project, I certify that:

    (a) The contribution was created in whole or in part by me and I
        have the right to submit it under the open source license
        indicated in the file; or

    (b) The contribution is based upon previous work that, to the best
        of my knowledge, is covered under an appropriate open source
        license and I have the right under that license to submit that
        work with modifications, whether created in whole or in part
        by me, under the same open source license (unless I am
        permitted to submit under a different license), as indicated
        in the file; or

    (c) The contribution was provided directly to me by some other
        person who certified (a), (b) or (c) and I have not modified
        it.

    (d) I understand and agree that this project and the contribution
        are public and that a record of the contribution (including all
        personal information I submit with it, including my sign-off) is
        maintained indefinitely and may be redistributed consistent with
        this project or the open source license(s) involved.
