You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3.4 KiB
3.4 KiB
Contributing to Overseerr
All help is welcome and greatly appreciated. If you would like to contribute to the project the steps below can get you started:
Development
Tools Required
- HTML/Typescript/Javascript editor of choice. (VSCode is recommended. Upon opening the project, a few extensions will be automatically recommended for install.)
- NodeJS (Node 12.x.x or higher)
- Yarn
- Git
Getting Started
-
Fork the repository to your own GitHub account and then clone it to your local device.
git clone https://github.com/YOUR_USERNAME/overseerr.git cd overseerr/
-
Add the remote upstream.
git remote add upstream https://github.com/sct/overseerr.git
-
Create a new branch
git checkout -b BRANCH_NAME develop
- Its recommended to name the branch something relevant to the feature or fix you are working on.
- An example of this would be
fix-title-cards
orfeature-new-system
. - Bad examples would be
patch
orbug
.
-
Run development environment
yarn yarn install
- Alternatively you can run using Docker with
docker-compose up -d
. This method does not require installing NodeJS or Yarn on your machine directly.
- Alternatively you can run using Docker with
-
Create your patch and run appropriate tests.
-
Follow the guidelines.
-
Should you need to update your fork you can do so by rebasing from upstream.
git fetch upstream git rebase upstream/develop git push origin BRANCH_NAME -f
Contributing Code
- If you are taking on an existing bug or feature ticket, please comment on the GitHub Issue to avoid multiple people working on the same thing.
- All commits must follow Conventional Commits
- It is okay if you squash your PR down to be a single commit that fits this standard.
- PRs with commits not following this standard will not be merged.
- Please make meaningful commits, or squash them
- Always rebase your commit to the latest
develop
branch. Do not merge develop into your branch. - It is your responsibility to keep your branch up to date. It will not be merged unless its rebased off the latest develop branch.
- You can create a Draft pull request early to get feedback on your work.
- Your code must be formatted correctly or the tests will fail.
- We use Prettier to format our codebase. It should auto run with a git hook, but its recommended to have a Prettier extension installed in your editor and have it format on save.
- If you have questions or need help, you can reach out in GitHub Discussions or in our Discord.
- Only open pull requests to
develop
. Nevermaster
. Any PR's opened to master will be closed.
Translation
We use Weblate for our translations so please feel free to contribute to localizing Overseerr!
Attribution
This contribution guide was inspired by the Next.js and Radarr contribution guides.