# Contribute to this project

This page contains pointers and links to help you contribute to this project.

## Our team compass

The {external+tc:doc}`Team Compass <index>` is a source of truth for our team structure and policy.
It also has a lot of information about how to contribute.

## Code of conduct

We expect all contributors to this project to [](inv:tc#code-of-conduct).

## Where we work

We do most of our work in GitHub repositories in [the `executablebooks/` GitHub organization](https://github.com/executablebooks).

## Contribution workflow

Generally speaking, our contribution workflow looks someting like this:

- **Conduct free-form conversation and brainstorming in our forum**. We have [a community forum](https://github.com/executablebooks/meta/discussions) for general discussion that does not necessarily require a change to our code or documentation.
- **Discuss and propose changes in issues**. Issues are a way for us to agree on a problem to solve, and align on a way to solve it. They should invite broad feedback and be as explicit as possible when making formal proposals.
- **Make a pull request to implement an idea**. We use Pull Requests to formally propose changes to our code or documentation. These generally point to an issue and ideally will close it.
- **Iterate on the pull request and merge**. Pull Requests should have discussion and feedback from at least one core team member, and ideally from many. Once the PR is ready to merge, a core team member may decide to do so. See [our decision-making guide for formal details](inv:tc#governance).

This describes the high-level process that is usually followed.
In practice, we recommend attempting a contribution to get a feel for how it works in practice.

## How we are structured

Our [Team page](inv:tc#team) lists all of the teams and their members.
In addition, [our Governance page](inv:tc#governance) describes the responsibilities and authority that team members have.

## How we make decisions

Our [governance page](inv:tc#governance) describes our formal decision-making processes.

## Development conventions

We suggest {external+tc:doc}`some developer conventions <development/conventions>` to help team members improve their technical contributions, and to promote consistency in our workflows.
