# Overview

This document is a work in progress.

## Recommended tools

- [Visual Studio Code](https://code.visualstudio.com/)

## Recommended tutorial

I recommend the [`Git and GitHub` portion of the don't be afraid to commit](https://dont-be-afraid-to-commit.readthedocs.io/en/latest/git/index.html) tutorial.
To be able to contribute to `pymedphys` you need to have a handle on git and GitHub and how they interact.
I do recommend the whole [`Git and GitHub`](https://dont-be-afraid-to-commit.readthedocs.io/en/latest/git/index.html) section however, the key concepts that are required are:

- [Give GitHub your ssh keys](https://dont-be-afraid-to-commit.readthedocs.io/en/latest/git/commandlinegit.html#give-github-your-public-keys)
- [Creating a new branch](https://dont-be-afraid-to-commit.readthedocs.io/en/latest/git/commandlinegit.html#create-a-new-branch)
- [Keeping main clean](https://dont-be-afraid-to-commit.readthedocs.io/en/latest/git/commandlinegit.html#send-me-a-pull-request)
- [Incorporating upstream changes](https://dont-be-afraid-to-commit.readthedocs.io/en/latest/git/commandlinegit.html#incorporate-upstream-changes)
- [Add an upstream remote](https://dont-be-afraid-to-commit.readthedocs.io/en/latest/git/remotes.html#add-a-remote)
