-
Notifications
You must be signed in to change notification settings - Fork 13.6k
Contributing Guide
Thank you for expressing interest in contributing to our curriculum!
If you would like to contribute, but are not sure how, find an issue tagged with "help wanted" to work on.
- Please comment on the issue stating what you'd like to work on and wait to be assigned before working on it.
- After being assigned, address each item listed in the acceptance criteria.
If you would like to propose a small change (fixing a typo, updating a link, etc.) that is not part of an existing issue, you are welcome to make the change and submit a PR.
If you would like to propose a change that is not covered in an open issue, please start by creating a new issue or discussing this in our Discord's contribution-suggestions channel.
If you're trying to add an image to our curriculum please read our wiki post on how to do so.
-
Fork this repo on your local machine.
- Fork and clone this to your local machine. Use this guide if you don't know how to do that.
- Set the upstream remote so you can keep your copy of the app synced with the original. To do that, go to your terminal and
cd
into your cloned curriculum directory. Then, use one of the following commands:
If you have ssh set up with Git
$ git remote add upstream [email protected]:TheOdinProject/curriculum.git
Otherwise
$ git remote add upstream https://github.com/TheOdinProject/curriculum.git
-
Before you start working on your issue, create a branch and name it like the following examples:
If it's a new feature
$ git checkout -b feature/feature-name
If it's a bug fix
$ git checkout -b fix/fixed-bug-name
-
When you have finished, ensure your markdown is correctly formatted and rendering properly using our markdown preview tool.
-
If the markdown if correctly formatted, you are ready to submit a pull request:
Push your branch to your fork
$ git push origin <your branch name here>
Create a pull request
-
Go to your fork on Github after you have pushed up your branch. A new button should be visible near the top of the page. It will allow you to create a pull request to the original Odin Project Repo.
-
Summarize the change in the pull request title, so that anyone can skim through our open pull requests to prevent making a duplicate PR. As a general guideline, the title should summarize the change and where it happened, for example: "Fixes punctuation in Clean Code lesson", "Updates specificity link in CSS lesson", and "Adds code example to Ruby Variable lesson".
-
Fill out the pull request template in its entirety. Please describe the change in detail and explain why the change is necessary. If the PR is related to an existing issue, you should link the issue number in the PR, for example: "resolves #1234".
-
Please let us know if you require any help doing any of the steps in this guide in our Discord's contribution-suggestions channel.