Skip to content

Latest commit

 

History

History
221 lines (124 loc) · 8.78 KB

CONTRIBUTING.md

File metadata and controls

221 lines (124 loc) · 8.78 KB

Contribute to iota-wiki

This document describes how to contribute to the IOTA wiki.

We encourage everyone with knowledge of IOTA technology to contribute.

Thanks! ❤️

Ways to contribute 🔍

To contribute to iota-wiki on GitHub, you can:

  • Report a bug
  • Suggest a new feature or topic for the wiki
  • Add a new feature or topic to the wiki
  • Write content for the wiki

Report a bug 🐛

This section guides you through reporting a bug. Following these guidelines helps maintainers and the community understand the bug, reproduce the behavior, and find related bugs.

Before reporting a bug

Please check the following list:

  • Ensure the bug was not already reported by searching on GitHub under Issues. If the bug has already been reported and the issue is still open, add a comment to the existing issue instead of opening a new one.

Note: If you find a Closed issue that seems similar to what you're experiencing, open a new issue and include a link to the original issue in the body of your new one.

Submitting A Bug Report

To report a bug, open a new issue, and be sure to include as many details as possible, using the template.

Note: Minor changes such as fixing a typo can but do not need an open issue.

If you also want to fix the bug, submit a pull request and reference the issue.


Suggest a new feature or topic for the wiki 💡

This section guides you through suggesting a new feature or adding a new topic to the wiki. Following these guidelines helps maintainers and the community collaborate to find the best possible way forward with your suggestion.

Before suggesting a new feature

Ensure the feature or topic has not already been suggested by searching on GitHub under Issues.

Suggesting a new feature or topic

To suggest a new feature/topic, open a new issue, using the suggestion template.


Add a new feature or topic to the wiki 🔨

This section guides you through adding a new feature or topic. Following these guidelines helps give your feature/topic the best chance of being approved and merged.

Before adding a new feature/topic

Check if there is already an open issue or pull request (PR), related to your feature/topic.

Otherwise, your feature may not be approved at all.

Adding a new feature/topic

To build a new feature/topic, check out a new branch based on the main branch.


Pull requests 📣

This section guides you through submitting a pull request (PR). Following these guidelines helps give your PR the best chance of being approved and merged.

Before submitting a pull request

Before submitting a pull request, please follow these steps to have your contribution considered by the maintainers:

  • A pull request should have exactly one concern (for example one feature or one bug). If a PR addresses more than one concern, it should be split into two or more PRs.

  • A pull request can be merged only if it references an open issue

    Note: You don't need to open an issue for minor changes such as typos, but you can if you want.

  • All code should be well tested

Submitting a pull request

The following is a typical workflow for submitting a new pull request:

  1. Fork this repository
  2. Create a new branch based on your fork. For example, git checkout -b fix/my-fix or git checkout -b feat/my-feature.
  3. Commit changes and push them to your fork
  4. Target your pull request to be merged with develop

If the maintainer approves the PR, it will be merged.

Note: Reviewers may ask you to complete additional work, tests, or other changes before your pull request can be approved and merged.


Write Content ✏️:

Contribute to the Iota-Wiki Content

See the contribution guidelines.

Submitting your contribution

Once you have completed your contribution goes to the bottom of the edit page to the commit changes section.

  • In the title add the title of the page you have edited.
  • Edited pagename.md
  • In the description explain a little about your edits, whether it was fact correction, typo edits, or full page creation, page formatting, etc.
  • Select create a new branch
  • Name the branch after your name-pagename-edit
  • Click commit changes
  • This will open a pull request, where you can fill out the basic information for your updates.
  • Then click the create pull request button

Working with the Project Board

To keep our WIKI Project organized and help everyone understand the current state of work that's going on, we decided to use a Kanban Style Project Board. Everything related to content creation should be represented in this board. You will find it under the projects tab:

https://github.com/iota-wiki/iota-wiki/projects

image

In the board, we have created 5 fields that represent the life cycle of a content page till completion.

To do

Here are all pages that have not yet been started to work on. Pick the card of the content page you wish to create here and move it to the next stage by drag and drop into

In progress

Content that is currently been worked on by someone. As long as you are working and editing a page, leave the card here.

Ready for Review

As soon as you would be happy to receive a review of your work move the card here and open a Pull Request in "Draft" status. Request a review from one of the maintainers in your Pull Request or just ask in Discord for Feedback

add all links/content, ready for publishing

While your written content might be finished, the graphics, images or links to outside content or other Wiki pages might still need some fixing or contribution.

Complete

Content pages have been finalized and are ready to publish, Pull Request closed. Page can be added "as is" in the final Wiki version

image

Convert to issue

Every card in the Kanban can be converted into an open issue. You should use this feature. We can all work much better if we see which issues are currently open and which ones are closed and it helps us all to stay organized.

image

Using issues to organize the Project Flow

Once you have converted your Project Board card into an open issue, you can add some attributes to the issue that will structure our workflow

image

Assignees

You can assign an issue to yourself if you are working alone on your content, or to another member of the Team that you think can help or needs to have a look at that issue

image

Labels

Labels are an excellent tool to visualize an issue. They will show up in the Issues Main Overview and directly indicate what the issue is about. For content we use the "documentation" and "feature" labels.

image

Projects

Here you can assign an issue to a project. This should be already added if you have followed the steps above by using the Project Kanban Board. But you can also manage it here.

image

Milestones

Milestones can help you and others see if important progress has been achieved. You are free to add milestones that you may find important

image

Linked Pull Requests

As soon as you have opened a pull request for the content, link the issue to this pull request. When the Pull Request gets merged or closed, it will automatically also close this issue.

image

Congratulations! You’re all done!

Enjoy contributing and if you have any questions or ideas send us an issue!