docs: edit contribution guide (#1158) [skip ci]

pull/1154/head
TheCatLady 3 years ago committed by GitHub
parent 6e95c8b7a1
commit 71773c91c6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -1,80 +1,87 @@
# Contributing to Overseerr # Contributing to Overseerr
All help is welcome and greatly appreciated. If you would like to contribute to the project, the instructions below can get you started... All help is welcome and greatly appreciated! If you would like to contribute to the project, the following instructions should get you started...
## Development ## Development
### Tools Required ### Tools Required
- HTML/Typescript/Javascript editor of choice. ([VSCode](https://code.visualstudio.com/) is recommended. Upon opening the project, a few extensions will be automatically recommended for install.) - HTML/Typescript/Javascript editor
- [NodeJS](https://nodejs.org/en/download/) (Node 12.x.x or higher) - [VSCode](https://code.visualstudio.com/) is recommended. Upon opening the project, a few extensions will be automatically recommended for install.
- [NodeJS](https://nodejs.org/en/download/) (Node 14.x or higher)
- [Yarn](https://yarnpkg.com/) - [Yarn](https://yarnpkg.com/)
- [Git](https://git-scm.com/downloads) - [Git](https://git-scm.com/downloads)
### Getting Started ### Getting Started
1. [Fork](https://help.github.com/articles/fork-a-repo/) the repository to your own GitHub account and then [clone](https://help.github.com/articles/cloning-a-repository/) it to your local device. 1. [Fork](https://help.github.com/articles/fork-a-repo/) the repository to your own GitHub account and [clone](https://help.github.com/articles/cloning-a-repository/) it to your local device:
```bash ```bash
git clone https://github.com/YOUR_USERNAME/overseerr.git git clone https://github.com/YOUR_USERNAME/overseerr.git
cd overseerr/ cd overseerr/
``` ```
2. Add the remote upstream. 2. Add the remote `upstream`:
```bash ```bash
git remote add upstream https://github.com/sct/overseerr.git git remote add upstream https://github.com/sct/overseerr.git
``` ```
3. Create a new branch 3. Create a new branch:
```bash ```bash
git checkout -b BRANCH_NAME develop git checkout -b BRANCH_NAME develop
``` ```
- It is recommended to name the branch something relevant to the feature or fix you are working on. - It is recommended to give your branch a meaningful name, relevant to the feature or fix you are working on.
- An example of this would be `fix-title-cards` or `feature-new-system`. - Good examples:
- Bad examples would be `patch` or `bug`. - `docs-docker`
- `feature-new-system`
- `fix-title-cards`
- Bad examples:
- `bug`
- `docs`
- `feature`
- `fix`
- `patch`
4. Run development environment 4. Run the development environment:
```bash ```bash
yarn yarn
yarn dev yarn dev
``` ```
- Alternatively you can run using [Docker](https://www.docker.com/) with `docker-compose up -d`. This method does not require installing NodeJS or Yarn on your machine directly. - Alternatively, you can use [Docker](https://www.docker.com/) with `docker-compose up -d`. This method does not require installing NodeJS or Yarn on your machine directly.
5. Create your patch and run appropriate tests. 5. Create your patch and test your changes.
6. Follow the [guidelines](#contributing-code). - Be sure to follow both the [code](#contributing-code) and [UI text](#ui-text-style) guidelines.
- Should you need to update your fork, you can do so by rebasing from `upstream`:
7. Should you need to update your fork, you can do so by rebasing from `upstream`: ```bash
git fetch upstream
```bash git rebase upstream/develop
git fetch upstream git push origin BRANCH_NAME -f
git rebase upstream/develop ```
git push origin BRANCH_NAME -f
```
### Contributing Code ### Contributing Code
- If you are taking on an existing bug or feature ticket, please comment on the [GitHub Issue](https://github.com/sct/overseerr/issues) to avoid multiple people working on the same thing. - If you are taking on an existing bug or feature ticket, please comment on the [issue](https://github.com/sct/overseerr/issues) to avoid multiple people working on the same thing.
- All commits **must** follow [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) - All commits **must** follow [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/)
- It is okay if you squash your PR down to be a single commit that fits this standard. - It is okay to squash your pull request down into a single commit that fits this standard.
- PRs with commits not following this standard will not be merged. - Pull requests with commits not following this standard will **not** be merged.
- Please make meaningful commits, or squash them. - Please make meaningful commits, or squash them.
- Always rebase your commit to the latest `develop` branch. Do not merge `develop` into your branch. - 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. - It is your responsibility to keep your branch up-to-date. Your work will **not** be merged unless it is rebased off the latest `develop` branch.
- You can create a "draft" pull request early to get feedback on your work. - 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. - Your code **must** be formatted correctly, or the tests will fail.
- We use Prettier to format our codebase. It should automatically run with a `git` hook, but it is recommended to have the Prettier extension installed in your editor and format on save. - We use Prettier to format our code base. It should automatically run with a Git hook, but it is recommended to have the Prettier extension installed in your editor and format on save.
- If you have questions or need help, you can reach out in [GitHub Discussions](https://github.com/sct/overseerr/discussions) or in our [Discord](https://discord.gg/PkCWJSeCk7). - If you have questions or need help, you can reach out via [Discussions](https://github.com/sct/overseerr/discussions) or our [Discord server](https://discord.gg/PkCWJSeCk7).
- Only open pull requests to `develop`. Never `master`. Any PRs opened to `master` will be closed. - Only open pull requests to `develop`, never `master`! Any pull requests opened to `master` will be closed.
### UI Text Style ### UI Text Style
When adding new UI text, please be sure to adhere to the following guidelines: When adding new UI text, please try to adhere to the following guidelines:
1. Be concise and clear, and use as few words as possible to make your point. 1. Be concise and clear, and use as few words as possible to make your point.
2. Use the Oxford comma where appropriate. 2. Use the Oxford comma where appropriate.
@ -90,7 +97,7 @@ When adding new UI text, please be sure to adhere to the following guidelines:
## Translation ## Translation
We use [Weblate](https://hosted.weblate.org/engage/overseerr/) for our translations, and your help with localizing Overseerr would be greatly appreciated! If your language is not listed below, please [open a feature request on GitHub](https://github.com/sct/overseerr/issues/new/choose). We use [Weblate](https://hosted.weblate.org/engage/overseerr/) for our translations, and your help with localizing Overseerr would be greatly appreciated! If your language is not listed below, please [open a feature request](https://github.com/sct/overseerr/issues/new/choose).
<a href="https://hosted.weblate.org/engage/overseerr/"><img src="https://hosted.weblate.org/widgets/overseerr/-/overseerr-frontend/multi-auto.svg" alt="Translation status" /></a> <a href="https://hosted.weblate.org/engage/overseerr/"><img src="https://hosted.weblate.org/widgets/overseerr/-/overseerr-frontend/multi-auto.svg" alt="Translation status" /></a>

@ -58,7 +58,7 @@ docker run -d \
After running Overseerr for the first time, configure it by visiting the web UI at http://[address]:5055 and completing the setup steps After running Overseerr for the first time, configure it by visiting the web UI at http://[address]:5055 and completing the setup steps
For more information or alternative installation methods, please see the [Overseerr documentation](https://docs.overseerr.dev/getting-started/installation). For more information and alternative installation methods, please see the [Overseerr documentation](https://docs.overseerr.dev/getting-started/installation).
⚠️ Overseerr is currently under very heavy, rapid development and things are likely to break often. We need all the help we can get to find bugs and get them fixed to hit a more stable release. If you would like to help test the bleeding edge, please use the `sctx/overseerr:develop` image instead! ⚠️ ⚠️ Overseerr is currently under very heavy, rapid development and things are likely to break often. We need all the help we can get to find bugs and get them fixed to hit a more stable release. If you would like to help test the bleeding edge, please use the `sctx/overseerr:develop` image instead! ⚠️

Loading…
Cancel
Save