CONTRIBUTING.md
# Welcome!
_Aam Digital_ is open source because we believe in building things together
and letting people benefit from and adapt things rather than everybody reinventing their own wheel.
In order to build great software for small social impact organisations
we welcome anybody willing to contribute.
We are a small core team of full-time developers as well as a few regular volunteer contributors.
So whether you want to extend our code for your own use case or just help out -
we welcome any contributions to make this project better!
---
## Get started
To get started, please have a look at our [Developer Documentation](https://aam-digital.github.io/ndb-core/documentation/additional-documentation/overview.html).
1. Work through the [Tutorial](https://aam-digital.github.io/ndb-core/documentation/additional-documentation/tutorial.html).
- This walks you through the setup and basic understanding of the project and also gives an overview of the technologies and frameworks involved.
- Feel free to skip over steps that seem trivial to you, we tried to make this very beginner friendly.
2. Check our workflow regarding pull requests: [How to contribute code](https://aam-digital.github.io/ndb-core/documentation/additional-documentation/how-to-guides/contribute-code-to-the-project.html)
3. Don't hesitate to ask questions!
## Get in touch
Do get in touch with us by creating an issue here or
writing to [info@aam-digital.com](mailto:info@aam-digital.com).
Our main communication channels in the team are
- **GitHub issues** and **pull requests**.
Feel free to open one yourself also to ask a question.
- **Slack**. Write us an e-mail to get an invitation to our workspace.
## Where can I help?
Have a look at our issues on GitHub.
Some of them are explicitly label as suitable issues for a new contributor to work on: [Community Help Wanted](https://github.com/orgs/Aam-Digital/projects/2/views/4?filterQuery=label%3A%22Status%3A+Community+Help+Wanted+%28good+first+issue%29%22+).
If you are not sure whether you should work on a certain issue, just post a short comment in the issue to clarify.
Whenever you start working on an issue, please assign yourself on the GitHub issue and change the "status" within the project to "In Progress".
We organize our work using GitHub Projects' kanban boards and issue labels:
- [Project Board](https://github.com/orgs/Aam-Digital/projects/2)
- Get an overview of all issues (across all repositories) and their status here, we use a kanban-style board where issues are moved through the columns based on their status.
- The issues in the board are sorted by priority (most important on top).
- Please do not work on issues in the "Triage / Analysis" status, these topics still required a clearer definition and approval from the core team.
- [Labels](https://github.com/Aam-Digital/ndb-core/labels)
- Our labels are scoped into a few logical groups (e.g. "Status" or "Type" related labels), do check the descriptions shown beside the label name in the list of GitHub labels.
- The same labels are maintained across all our repositories.