Skip to main content

How to Contribute!

You Rock!

First off, thank you for considering contributing to the Subspace Network. It's through the amazing collaboration of people like yourself that truly makes the Open Source community amazing. ❤️

Help us, Help you, Help us!

Following these guidelines shows that you respect the time of the developers who manage and develope this open source project. In return, they should reciprocate that respect in addressing your issue, assessing changes, and helping you finalize your pull requests.

What Can I Contribute?

We are a fully Open Source project, meaning we are open to all kinds of contributions from our community. Here are a few example of contributions that we are open to in this repo:

  • Added Content: Writing a nice guide? Submit it (Where?) so we can add it to our Docs.
  • Translation: Adding Translations of our prior content? See the translate page for help.
  • Bug Reports & Fixes: Find a bug or error? Let us know where its hiding. (Where?)
  • Feature Requests & Implementations: Looking for a new feature? Share your ideas so we can improve.

If you have something that is not listed, try to be as descriptive as possible and feel free to submit the PR.

Ground Rules

Please refer to our Code of Conduct

Your First Contribution

Simple Fix

Please follow this pathway for minor contributions such as Spelling errors, Typos, Rewording, etc.

If you are adding entirely new pages, features, etc, then please refer to the Advanced portion of this section

  1. Go to Subspace Documentation, and find the page that you would like to change.
  2. Scroll to the bottom and click Edit this page.
  3. This will open up GitHub, and direct you to the raw page on GitHub.
  4. In the top right click the pencil emoji to edit the page.
  5. GitHub will change the page to a text editor, where you will be able to make changes.
  6. Once you are satisfied with your changes you will scroll to the bottom.
    • Fill out Title
    • Fill out Description
    • Click the Create a new branch for this commit and start a pull request. option
  7. Click Propose Changes
  8. On the right you will see some options, you will want to apply the most accurate labels listed.
  9. Click Create Pull Request

🎉Congratulations! You have just submitted your first Pull Request! Please provide some time for a maintainer to view your pull request and approve it, or request adjustments.

Never contributed before?

No worries! We all start somewhere 🚀 There are several videos & resources online to show various ways to use GitHub. Check out some of these amazing guides to help get you familiar with GitHub and contributing.

Advanced Fix

This section presumes a better understanding of GitHub, and programming basics.

For larger, more advanced fixes please ensure you follow the basic principles below.

  • Do not comment simple trivial code such as importing existing components, and basic HTML/CSS.
  • Do comment on complex non-trivial code, complex logic should be easy to understand.
  • All public functions need to be commented.
  • If code is trivial but could be forgotten over time, please comment.
  • Try and think about your code from a 3rd person view, it should make sense to anyone with a similar background in the technology that you are using.
  • Sometimes difficult to understand code needs refactoring instead of more comments.
  • Make sure the program can still build prior to pull request.

For advanced fixes you should follow the general pathway for GitHub.

  1. Create your own fork of the code.
  2. Do the changes locally on your system in your preferred development environment.
  3. Test your changes locally, ensuring there are no clear edge cases or issues.
  4. If you are happy with the changes and think the project could use it, submit a pull request.

How to report a bug or error

We do not have any strict template that you must follow, but please provide all required information so we can quickly resolve any issues.

  • If you find an actual programming bug, please submit a GitHub issue and use the label bug.
  • If you find a grammar/spelling/content error, please submit a GitHub issue and use the label documentation.

How to suggest a feature or enhancement

This documentation is for the community, so any feature requests are welcome.

  • If you are requesting a feature, please submit a Github issue and use the label enhancement
  • Explain why this issue is needed, and what problems it will solve.
  • Indicate if you are able/willing to help implement this feature.

Code review process

  • The core team will take a look at any pull requests as soon as possible, generally you can expect a response within a day or two.
  • If it is a simple and non-controversial fix we will review the code and approve.
  • If there are questions, feedback, or more discussion needs to be had we will reach out to the contributor on the Pull Request to try and resolve said issues.
  • If there is no response or activity within 2 weeks of team response we may close the pull request.

Community

You can chat with the core team on Discord https://discord.gg/subspace-network.