This document describes how to set up your development environment and contribute changes to the **microsoft/react-native-windows** project. This document assumes basic working knowledge with Git and related tools. We are providing instructions specific to this project.
If you wish to contribute changes back to the **microsoft/react-native-windows** repository, start by creating your own fork of the repository. This is essential. This will keep the number of branches on the main repository to a small count. There are lots of developers in this project and creating lots of branches on the main repository does not scale. In your own fork, you can create as many branches as you like.
- Navigate to **[GitHub](https://www.github.com)** with a browser and log in to your GitHub account. For the sake of this document, let's assume your username is **johndoe**.
- Click on the **Fork** button at the top right corner of the page.
- Create the fork under your account. Your GitHub profile should now show **react-native-windows** as one of your repositories.
- Create a folder on your device and clone your fork of the **Microsoft** repository. e.g. `https://github.com/johndoe/react-native-windows.git`. Notice how your GitHub username is in the repository location.
Create a branch from your fork and start making the code changes. We recommend using [**SourceTree**](https://www.sourcetreeapp.com/) for working in your repo. Once you are happy with the changes, and want to merge them to the main **microsoft/react-native-windows** project, create a pull request from your branch directly to "microsoft/react-native-windows main".