First off, thanks for taking the time to contribute! Here are some guidelines to help ensure a smooth contribution process.
This project adheres to the Contributor Covenant Code of Conduct. By participating, you are expected to uphold this code.
- Make sure you have Node.js and npm (or yarn) installed.
- Fork the repository on GitHub.
- Clone your forked repository to your machine.
- Install the dependencies by running
npm install
.
- Create a branch for your changes. Use a descriptive name, for example,
add-new-feature
orfix-issue-123
. - Make your changes in the new branch. Please follow the existing coding style.
- Write tests that cover your changes.
- Run
npm test
to ensure your changes don't break existing functionality and your new tests are passing. - Update the documentation to reflect your changes, if necessary.
This project uses Changesets to manage releases. Changesets is a tool that helps automate the process of creating and publishing new versions of a package.
To create a new release:
- Create a new branch for your changes.
- Make your changes in the new branch.
- Run
npx changeset add
to create a new Changeset. - Commit the Changeset file and your other changes.
- Push your changes to your fork on GitHub.
- Submit a pull request against the main repository.
- Once your pull request is merged, the Changeset will be automatically published to npm.
This project uses Architecture Decision Records (ADRs) to document important decisions made during development. ADRs are text files that describe a decision, the context in which it was made, and the consequences of the decision.
To create a new ADR:
- Run
npx adr new "Title of the decision"
to create a new ADR file. - Edit the ADR file to describe the decision, the context in which it was made, and the consequences of the decision.
- Commit the ADR file to the repository along with your other changes.
Once you've submitted a pull request, maintainers will review your code. They may provide feedback and request changes. This is a normal part of the review process, and provides valuable learning opportunities.
Please be patient while waiting for your code to be reviewed. The maintainers are volunteers and may not be able to review your code immediately.
If you find a bug or have a suggestion for a new feature, please open a new issue on GitHub. When reporting a bug, please include as much information as possible about how to reproduce it. This should include your environment (like your Node.js version), any error messages, and steps to reproduce the bug.