Thank you for your interest in contributing to SpecificationKit! We welcome contributions from the community to help improve the project. To ensure a smooth collaboration process, please follow these guidelines.
- Check the existing issues to see if your problem or feature request has already been reported.
- Open a new issue with a clear and descriptive title.
- Provide detailed information about the problem or feature, including steps to reproduce, expected behavior, and actual behavior.
- Include relevant environment details (e.g., Swift version, platform).
- Open an issue to discuss your proposed enhancement before starting work.
- Explain the motivation and the benefits of the enhancement.
- Be open to feedback and discussion.
- Fork the repository and create your branch from
main. - Follow the existing code style and conventions.
- Write clear, concise commit messages.
- Include tests for new features or bug fixes.
- Run all tests and ensure they pass before submitting.
- Reference the related issue in your pull request description.
- Keep pull requests focused and manageable.
- Use Swift 5.9+ features where appropriate.
- Follow Swift API Design Guidelines.
- Maintain clear and consistent naming.
- Document public APIs with comments where necessary.
- Add unit tests for any new functionality.
- Ensure existing tests pass without modification unless necessary.
- Use the existing test frameworks and structure.
- Be respectful and constructive in discussions.
- Respond to review comments in a timely manner.
- Ask questions if you need clarification.
By contributing to SpecificationKit, you agree that your contributions will be licensed under the project's MIT License.
Thank you for helping make SpecificationKit better!