Thank you for considering contributing to ConstraintCrafter! We welcome improvements, bug fixes, and new features.
- Fork the repository on GitHub:
https://github.com/ryvin/ConstraintCrafter - Clone your fork:
git clone https://github.com/ryvin/ConstraintCrafter.git
- Create a feature branch:
git checkout -b feature/awesome-feature
- Install dependencies and build:
mvn clean package
- Write your code and tests in
src/main/javaandsrc/test/java. - Run tests locally:
mvn test - Commit your changes:
- Use descriptive commit messages (e.g.
feat: add maxOccurs validation). - Follow existing code conventions.
- Use descriptive commit messages (e.g.
- Push to your fork:
git push origin feature/awesome-feature
- Open a Pull Request against
mainbranch on the upstream repo. Describe your changes and link any related issues.
- Follow the existing Java coding style (Java 11 conventions).
- Ensure all new code has unit tests and passes existing tests.
- Keep methods short and focused; avoid duplication.
- Update documentation (
README.md, Javadocs) as needed.
- Use GitHub Issues to report bugs or request enhancements.
- Provide a clear description, steps to reproduce, and expected vs. actual behavior.
For questions or feedback, reach out on GitHub: @ryvin.