Thanks for your interest in contributing.
- Node.js
>=20 - pnpm
>=10
- Fork the repository.
- Clone your fork.
- Install dependencies from the package root:
pnpm installIf you are working from the monorepo, run commands from this package directory.
Use the scripts defined in this repository's package.json. Common commands are:
pnpm test
pnpm typecheck
pnpm build
pnpm validateIf pnpm validate is available, run it before opening a pull request. Otherwise run the relevant test, typecheck, and build commands manually.
- Start by opening or confirming the issue you are working on.
- Branch from
developusing the formatfeature/<issueNo>. - Open pull requests against
develop. Contributor changes should not targetmaindirectly. - Keep the change focused.
- Add or update tests when behavior changes.
- Update docs or examples when public APIs or workflows change.
- Prefer root-cause fixes over workarounds.
Regular development happens on develop.
Contributors should create an issue first, then branch from develop as feature/<issueNo> and open the pull request back into develop.
To publish a release, maintainers merge develop into main and create the release tag from main.
- TypeScript in strict mode
- Avoid
any; useunknownwhen the type is genuinely unknown - Add explicit return types for public APIs
- Follow the existing naming, file, and test conventions in the repository
Use GitHub Issues for reproducible bugs and actionable feature requests.
For security reports, follow SECURITY.md.