Example: Open-source library
Contributing to acme-sdk
Thanks for helping improve acme-sdk. Bug fixes, docs improvements, and new examples are always welcome. For larger features, open an issue first so we can agree on the approach before you write code.
Prerequisites#
- Node.js 22 or later
- pnpm 9
- Git
Set up your environment#
git clone https://github.com/acme/acme-sdk.git
cd acme-sdk
pnpm install
Run tests and checks#
pnpm test
pnpm lint
pnpm typecheck
Branches and commits#
- Branch from main using type/short-description, for example fix/retry-timeout.
- Write commit messages in Conventional Commits format (feat:, fix:, docs:, chore:).
- Keep each commit focused on one change.
Pull requests#
- Link the issue your PR closes.
- Add or update tests for any behavior change.
- Add a changeset for anything that changes the public API.
- One approving review from a maintainer is required to merge.
- Maintainers aim to respond within three working days.
Code style#
- Prettier formats on commit; run pnpm format if CI complains.
- Avoid default exports.
- Document public functions with TSDoc.
Reporting bugs and requesting features#
- Search existing issues before opening a new one.
- For bugs, include the SDK version, runtime, a minimal reproduction, and the full error.
- Report security issues privately to security@acme.dev, not in public issues.
Code of conduct and license#
This project follows the Contributor Covenant code of conduct. By contributing, you agree your contributions are licensed under the MIT License.