# Contributing and collaborating<no value>
{{< callout context="note" title="If you want to develop plugins/modules..." icon="outline/info-circle" >}}
This section doesn't apply to making plugins and modules for Adaptyst unless you're
interested in a long-term collaboration with us or you want to contribute to
a plugin/module from the Adaptyst team. Just start coding, remember about
complying with the Adaptyst / Adaptyst Analyser core license, and publish your work
when you're ready!

However, you're still recommended to [contact us](/contact) so that any impact of potential API changes
on your work is minimised. You're also welcome to get in touch if you need any help.
{{< /callout >}}

As an open-source project, we are always looking for contributors and collaborators!
The first step is trying out Adaptyst yourself: go to [Installation](/install) followed
by [Quick start](/docs/intro/quick-start) to get started. Once you have an initial
grasp of the tool, you can start thinking about contributing.

**It is compulsory to contact us before you start any Adaptyst development work:
see [Contact](/contact). We will guide you and add you to our communication channels
to make sure that you get all the support you need and that your work is synchronised
with our work. Rest assured that you're not making any commitments by doing so:
we understand that volunteers come and go. Any unsolicited pull requests will be closed without any review.**

## Branches
* "main": the main branch where releases of Adaptyst / Adaptyst Analyser / a plugin or module from the Adaptyst team
are tagged.
* "dev": the development branch, **please work here.**

## Contribution ideas
If you don't have an idea on how to contribute, don't worry: you can have a look at [our issue tracker](/issue-tracker) and/or
[the forum](https://adaptyst-forum.web.cern.ch) for some inspiration.

## Code of conduct
[The CERN Code of Conduct](https://repository.cern/records/fe7kx-e4a22?preview_file=BrochureCodeofConductEN.pdf) applies.
If you witness any violation, [get in touch with us](/contact).

## Pull requests (PRs)
Once you're ready to merge your work into Adaptyst / Adaptyst Analyser / our module or plugin, open
a pull request on GitHub **against the "dev" branch**. We will review your code and get back to you as soon as possible.

{{< callout context="note" title="Legal considerations" icon="outline/info-circle" >}}
* Make sure that your code doesn't use any third-party work without permission.
* We accept AI-generated codes, but they must be vetted by a human before a PR is submitted. **PRs opened by
AI agents are treated as unsolicited PRs and will be thus closed without any review.**
* By submitting a PR on GitHub, you agree to the GitHub's Terms of Service which state
that you license your contribution under the same terms as the license of the repository.
We don't use contributor license agreements (CLAs).
{{< /callout >}}

## Collaborations
We are open to long-term collaborations with academic institutions / research groups and
commercial companies in various areas of the Adaptyst development and Adaptyst plugin or
module development. These may involve many different things such as knowledge sharing,
code contributions, support for making new plugins and modules etc.

We currently cooperate with the following entities:
* [ETH Zürich](https://ethz.ch): PhD research on unified modular performance analysis
and automated computer system design (**main academic collaboration**,
[Prof. Zhendong Su](https://people.inf.ethz.ch/suz))
* [INESC-ID Lisboa](https://www.inesc-id.pt): cache-aware roofline analysis (academic,
[Prof. Aleksandar Ilic](https://hpcas.inesc-id.pt/~ilic))
* [HES-SO](https://hes-so.ch): edge computing with custom and programmable
chips like FPGAs (academic / applied research, [Prof. Andrea Guerrieri](https://www.hevs.ch/en/collaborateurs/guerrieri-207310))

If you are interested in working with us, [contact us](/contact). We're happy to talk!

If you're not sure how you can benefit from collaborating, check the potential applications of Adaptyst beyond
high-level software [here](/docs/adaptyst/i-dont-work-on-high-level-software.-is-adaptyst-for-me).
