1
0
mirror of https://github.com/oceanprotocol/docs.git synced 2024-11-26 19:49:26 +01:00
docs/contribute/README.md
2023-10-12 10:38:08 +03:00

79 lines
5.1 KiB
Markdown

---
title: Ways to Contribute
description: Help develop Ocean Protocol software like a superhero
cover: ../.gitbook/assets/cover/contribute_banner.png
coverY: 0
---
# 🤝 Contribute
<figure><img src="../.gitbook/assets/gif/to-the-computer.gif" alt=""><figcaption></figcaption></figure>
### Report a bug 🐞
Have you found a bug in the code? To report a bug that _isn't a vulnerability_, go to the relevant GitHub repository, click on the _Issues_ tab, and select _Bug Report_.
First, make sure that you search existing open + closed issues + PRs to see if your bug has already been reported there. If not, then go ahead and create a new bug report! 🦸
#### Do you see an error in the Ocean Market?
Follow the steps below to properly document your bug! Paste the screenshots into your GitHub issue.
{% embed url="https://app.arcade.software/share/fUNrK6z2eurJ2C1ty2OG" fullWidth="false" %}
{% endembed %}
### Report vulnerabilities
For all the super sleuths out there, you may be able to earn a bounty for reporting vulnerabilities in sensitive parts of the code. Check out this page on [Immunify](https://immunefi.com/bounty/oceanprotocol/) for the latest bug bounties available. You can also responsibly disclose flaws by emailing us at [security@oceanprotocol.com](mailto:security@oceanprotocol.com).
<figure><img src="../.gitbook/assets/gif/matrix-code.gif" alt=""><figcaption><p>Did you find a glitch in the code matrix?</p></figcaption></figure>
### Suggest a new feature 🤔💭
Use the _Issues_ section of each repository and select _`Feature request`_ to suggest and discuss any features you would like to see added.
As with bug reports, don't forget to search existing open + closed issues + PRs to see if something has already been suggested.
### Improve core software
It takes a tribe of awesome coders to build a tech stack, and you're invited to pitch in 😊 We'd love to have you contribute to any repository within the `oceanprotocol` [GitHub](https://github.com/oceanprotocol) organization!
Before you start coding, please follow these basic guidelines:
* If no feature request issue for your case is present, **please open one first before starting to work on something, so it can be discussed openly with Ocean core team**.
* Make yourself familiar with the repository-specific contribution requirements and code style requirements.
* Because of the weird world of intellectual property, we need you to follow the [legal requirements](legal-reqs.md) for contributing code.
* Be excellent to each other in the comments, as outlined in the [Contributor Code of Conduct](code-of-conduct.md).
#### Your contribution workflow
1. As an external developer, fork the respective repo and **push your code changes to your own fork.** Ocean core developers push directly on the repo under `oceanprotocol` org.
2. Provide the issue # information when you open a PR, for example: `issue-001-short-feature-description`. The issue number `issue-001` needs to reference the GitHub issue that you are trying to fix. The short feature description helps us to quickly distinguish your PR among the other PRs in play.
3. To get visibility and Continuous Integration feedback as early as possible, open your Pull Request as a `Draft`.
4. Give it a meaningful title, and at least link to the respective issue in the Pull Request description, like `Fixes #23`. Describe your changes, mention things for reviewers to look out for, and for UI changes screenshots and videos are helpful.
5. Once your Pull Request is ready, mark it as `Ready for Review`, in most repositories code owners are automatically notified and asked for review.
6. Get all CI checks green and address eventual change requests.
7. If your PR stays open for longer and merge conflicts are detected, merge or rebase your branch against the current `main` branch.
8. Once a Pull Request is approved, you can merge it.
Depending on the release management of each repository, your contribution will be either included in a next release, or deployed live automatically.
Except for GitHub, you can chat with most Ocean Protocol core developers in the [Discord](https://discord.gg/TnXjkR5) if you have further development questions.
### Develop a dApp or integration on top of Ocean Protocol
We LOVE builders of dApps on Ocean! Nothing makes us feel prouder than seeing you create awesome things with these open-source tools.
If you need ANY help, then we're here to talk with you on [Discord](https://discord.gg/TnXjkR5) to give you advice. We're also consistently improving these docs to help you. And... you're here :)
### Improve the docs
The docs repo can always be improved. If you found a mistake or have an improvement to make, then follow the steps in the [contribution workflow](./#your-contribution-workflow) to submit your changes.
### Apply for a developer job
Do you REALLY love building on Ocean Protocol? Consider joining us full-time! Our openings are listed at [https://github.com/oceanprotocol/jobs](https://github.com/oceanprotocol/jobs).
Scroll a bit further, and at this page's footer, you'll find the social media links that allow you to join the Ocean community or engage in direct chats with us. 😊 Toodles!