Skip to content

Latest commit

 

History

History
89 lines (50 loc) · 5.18 KB

contributing.md

File metadata and controls

89 lines (50 loc) · 5.18 KB

Contributing guidelines

Before you create a new PR on Starport, make sure that you read and comply with this document.

Start a new Discussion if you want to propose changes to this document.

To prepare for success, see Set Up Your Starport Development Environment.

To contribute to docs and tutorials, see Contributing to Starport Docs.

Thank you for your contribution!

Providing Feedback

  • Before you open an issue, do a web search, and check for existing open and closed GitHub Issues to see if your question has already been asked and answered. If you find a relevant topic, you can comment on that issue.

  • To provide feedback or ask a question, create a GitHub issue. Be sure to provide the relevant information, case study, or informative links as suggested by the Pull Request template.

  • We recommend using GitHub issues for issues and feedback. However, you can ask quick questions on the #🛠️ build-chains channel in the official Starport Discord.

Opening pull requests (PRs)

Review the issues and discussions before you open a PR.

Choose a good PR title

Avoid long names in your PR titles. Make sure your title has fewer than 60 characters.

Follow Conventional Commits guidelines and keywords to find the best title.

Use parentheses to identify the package or feature that you worked on. For example: feat(services/chain), fix(scaffolding), docs(migration).

Review your own code

Make sure that you manually tested the changes you're introducing before creating a PR or pushing another commit.

Monitor your PR to make sure that all CI checks pass and the PR shows All checks have passed (the checkmark is green).

Do not rebase commits in your branch

Avoid rebasing after you open your PRs to reviews. Instead, add more commits to your PR. It's OK to do force pushes if the PR is still in draft mode and was never opened to reviews before.

A reviewer likes to see a linear commit history while reviewing. If you tend to force push from an older commit, a reviewer might lose track in your recent changes and will have to start reviewing from scratch.

Don't worry about adding too many commits. The commits are squashed into a single commit while merging. Your PR title is used as the commit message.

Contributing to documentation

When you open a PR for the Starport codebase, you must also update the relevant documentation. For changes to:

  • Developer Guide tutorials, update content in the /docs/guide folder.
  • Knowledge Base, update content in the /docs/kb folder.
  • Starport CLI reference, navigate to the ./starport/cmd package and update the documentation of the related command from its cobra.Command struct. The CLI docs are automatically generated, so do not make changes to docs/cli/index.md.

Ask for help

If you started a PR but couldn't finish it for whatever reason, don't give up. Instead, just ask for help. Someone else can take over and assume the ownership.

Prioritizing issues with milestones

Starport follows Git Flow for branch strategy https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow.

  • Each Starport release has a milestone, see https://github.com/tendermint/starport/milestones.

  • Issues in each milestone have a priority/high, priority/medium, or priority/low label.

    • Select issues to to work on for the earliest milestone. For example, select to work on an issue labeled as priority/low in milestone v0.1.0 before you work on an issue labeled as priority/high in milestone v0.2.0.
  • Milestone Next is applied to issues that suggest adding features, docs, and so on.

    • Issues with the Next milestone have a higher priority than other Issues with no milestone (no milestone is assigned).

    • Issues in the Next milestone usually have a lower priority than milestones that are associated with a release version, like Milestone v0.1.0.

  • A single project board https://github.com/tendermint/starport/projects/4 shows the issues we are currently working on and what issues we plan to work on.

Contributors, please check the To Do column on the project board https://github.com/tendermint/starport/projects/4 to find an issue to work on.

We appreciate your contribution!