Skip to content

Latest commit

 

History

History
71 lines (46 loc) · 3.54 KB

CONTRIBUTING.md

File metadata and controls

71 lines (46 loc) · 3.54 KB

Contribution Guidelines

First of all, thanks for thinking of contributing to this project! 👏

🐛 Reporting Issues

  • Please include a clear, specific title and replicable description.

  • Please include your environment, OS, and any exceptions/backtraces that occur. The more information that is given, the more likely we can debug and fix the issue.

🛎 Suggesting new features

If you are here to suggest a feature, first create an issue if it does not already exist. From there, we will discuss use-cases for the feature and then finally discuss how it could be implemented.

💻 Development

First ensure that your feature isn't already being developed or considered (see open PRs and issues). If it is, please consider contributing to those initiatives.

Steps to get started:

  • Fork this repository
  • Install dependencies by running $ yarn
  • Link @bigcommerce/storefront-data-hooks locally by running $ yarn link
  • Auto-build files as you edit by running $ yarn start
  • Implement your changes and tests to files in the src/ directory and corresponding test files
  • Run a project that uses this package
  • To run a project using your local build, link to the local @bigcommerce/storefront-data-hooks by running $ yarn link @bigcommerce/storefront-data-hooks from the project directory
  • Document your changes in the appropriate doc page
  • Git stage your required changes and commit (we recommend following Angular Commit Message Conventions)
  • Submit PR for review pointing to develop

🎁 Pull requests

Maintainers merge pull requests by squashing all commits and editing the commit message if necessary using the GitHub user interface.

Use an appropriate commit type. Be especially careful with breaking changes. We recommend following Angular Commit Message Conventions

🚀 Release process

We are using release-it for automated releasing.

Pre-releases

  • Create a PR from your working branch to develop
  • Once accepted and merged, a GitHub action will release the new feature to the beta track.
    • To try it: yarn add @bigcommerce/storefront-data-hooks@beta

More information about pre-releases with release-it.

Releases

  • Create a PR from develop to master.
  • Once accepted and merged, a GitHub action will automatically:
    • Release the new version to npm based on the semantic versioning
    • Update the Changelog.md and the version number on the package.json
    • And create a new release on GitHub
  • Merge changes from master to develop.
    • Why there are changes? Because of the previous step, the GitHub action has created a new commit with the Changelog and package version changes.
    • It will trigger a new develop build, totally unnecessary, but it’s a minor tradeoff. But we can solve it, by adding [no ci] to the merge commit message.

Do you want to modify the auto-generated Changelog?

Sometimes the autogenerated changelog is awful, and you want to improve it. You can do it, but be careful and add [no ci] to your commit message to avoid an unwanted release.

Other Ways to Contribute

  • Consider contributing to documentation, reporting bugs, or helping spread the word about storefront-data-hooks.

Thank you again for your interest in contributing! We're happy to have you here :)