Thank you for your interest in contributing to the Checkout.com Node.js SDK! We welcome contributions from the community.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Add tests for your changes - Ensure new functionality is covered by tests
- Run tests and ensure coverage remains high (
npm test) - Commit your changes using conventional commit format (
git commit -m 'feat: add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
# Clone the repository
git clone https://github.com/checkout/checkout-sdk-node.git
cd checkout-sdk-node
# Install dependencies
npm install
# Run tests
npm test
# Run tests in watch mode
npm run test:watch
# Build the project
npm run build
# Run linter
npm run lint- Follow the existing code style
- Use ES2022+ features where appropriate
- Write clear, descriptive commit messages following Conventional Commits
- Ensure all tests pass before submitting a PR
- Maintain or improve code coverage (currently 97.95%)
- Update TypeScript definitions in
types/dist/for any API changes
- All new features must include tests
- Bug fixes should include a test that reproduces the issue
- Run
npm testto execute the full test suite - Ensure coverage reports show your changes are tested
- Update the README.md with details of changes if applicable
- Update the TypeScript type definitions if you modify the API
- The PR will be merged once you have approval from a maintainer
- Ensure your code passes all CI checks
- Use the GitHub issue tracker
- Provide a clear description of the issue
- Include code samples or test cases when possible
- Specify the SDK version and Node.js version you're using
If you have questions about contributing, feel free to:
- Open a discussion on GitHub
- Contact us at support@checkout.com
Thank you for contributing! 🎉