Skip to content

Latest commit

 

History

History
51 lines (35 loc) · 2.74 KB

CONTRIBUTING.md

File metadata and controls

51 lines (35 loc) · 2.74 KB

Contributing Guidelines

Pull requests, bug reports, and all other forms of contribution are welcomed and highly encouraged! :octocat:

How can I contribute?

GitHub issues

If you encounter a problem with this library or if you have a new feature you'd like to see in this project, please create a new issue.

GitHub pull requests

Please leverage the repository's own tools to make sure the code is aligned with our standards. If you're using VSCode, it's easiest to use the recommended extensions (.vscode/extensions.json) to get integrated linting and autoformatting.

It's recommended to run all check commands before submitting the PR (type:check, format:check, lint:check, spell:check, yarn lint and yarn test:coverage).

Development setup

  1. Set up yarn
  2. Run yarn
  3. Run yarn dev and view the demo site at the printed localhost URL

This package uses Vite with Hot Module Replacement (HMR), so file edits should reflect immediately in your browser during local development.

To instead test a "built" version of this package which is installed into an "external" module, you can run yarn example, which runs a server with the separate application in the example/ directory.

Releasing a new version (for maintainers)

When a new version should be cut since some new changes have landed on the main branch, do the following to publish it:

  1. Go to the main branch and pull in the latest changes.
  2. Commit change using (commit convention)[https://www.conventionalcommits.org]
  3. Push the commit (ex: git push origin main)
  4. The release.yml GitHub Actions workflow will auto-generate a tag, change log, release note and a PR branch
  5. The automerge.yml GitHub Actions workflow will merge and delete the PR branch
  6. The publish.yml GitHub Actions workflow will publish the package to the npm registry

Issue possibly encountered during installation

  • with yarn
  • solution: . Remove yarn.lock . yarn cache clean --all . Create an empty yarn.lock . run yarn

TODO:

upgrade eslint to v9