Skip to content

Latest commit

 

History

History
59 lines (42 loc) · 2.53 KB

CONTRIBUTING.md

File metadata and controls

59 lines (42 loc) · 2.53 KB

How to contribute

Third-party patches are essential for keeping every project great. We simply can't access the huge number of use cases. We want to keep it as easy as possible to contribute changes that get things working in your environment. There are a few guidelines that we need contributors to follow to have a chance of keeping on top of things.

Our kanban board is public and available here.

Getting started

  • Make sure you have a GitHub account.
  • Submit a ticket for your issue, assuming one does not already exist.
    • It is OK to comment an already closed issue or review already merged PR.
      • If needed, we'll reopen it or open a new one.
    • Clearly describe the issue, including steps to reproduce if it is a bug.
    • Add a list of affected versions of the core, bridge, and theme packages you are aware of.
      • Include other versions as well, if you think it may help (React, browser, etc.).

Making changes

  • Create a fork from where you want to base your work.
  • Clone the repo and run pnpm install in the top-level only.
    • Make sure you are using pnpm that understands the pnpm-lock.json format. Check the current version in the package.json file.
  • Make sure your commit messages are in the proper format:
    • Bugfix or feature:
      • Implemented asynchronous validation (closes #17).
      • Disabled onSubmit until first render (closes #15).
    • Other changes:
      • Refactored joinName tests.
      • Updated README.md.
  • Make sure you have added the necessary tests for your changes. Do not worry though, the Codecov bot will report it in the pull request.
  • Make sure your code passes all tests: pnpm test.

Development

For the best local developer experience (DX) it is recommended to run scripts in watch mode.

Run the commands below in the root directory.

Running the build in watch mode

pnpm build:watch

Running the tests in watch mode

pnpm test -- --watch

Fixing lint issues automatically

pnpm lint:code -- --fix

Work in progress PRs are also welcome

If you can't or won't finish your PR, submit it anyway - maybe someone else will continue your work. If you don't know how to achieve your desired feature - file an issue for it - maybe someone else will implement it.