Contributing
Help improve the Java 25 Maven Template for everyone
How to Contribute
Thank you for your interest in contributing to the Java 25 Maven Template! There are many ways to contribute, and we appreciate all of them.
Report Issues
Found a bug or have a problem? Open an issue on GitHub with detailed information about the problem and steps to reproduce it.
Suggest Features
Have an idea for improvement? Create a feature request on GitHub describing the feature and why it would be valuable.
Submit Pull Requests
Want to contribute code? Fork the repository, make your changes, and submit a pull request with a clear description.
Improve Documentation
Documentation can always be better! Help us improve guides, fix typos, or add examples.
Development Setup
Follow these steps to set up the project for development.
Fork & Clone
# Fork the repository on GitHub, then clone your fork
git clone https://github.com/YOUR_USERNAME/java-maven-template.git
cd java-maven-template
Create a Branch
# Create a feature branch for your changes
git checkout -b feature/your-feature-name
Make Changes
Make your changes following our code standards and best practices.
Test Your Changes
# Run all tests
./mvnw verify
# Format code
./mvnw spotless:apply
Submit Pull Request
# Commit and push your changes
git add .
git commit -m "Description of your changes"
git push origin feature/your-feature-name
Then open a pull request on GitHub with a clear description of your changes.
Code Standards
Follow these guidelines to ensure your contributions meet our quality standards.
โจ Code Formatting
- All code must pass Spotless formatting checks
- Run
./mvnw spotless:applybefore committing - Follow Google Java Format (AOSP style)
- Use consistent naming conventions
๐งช Testing Requirements
- Add tests for new features
- Ensure all tests pass with
./mvnw verify - Maintain or improve code coverage
- Write clear, descriptive test names
๐ Documentation
- Update documentation for new features
- Add JavaDoc comments for public APIs
- Update README if necessary
- Include examples where helpful
๐ฌ Commit Messages
- Use clear, descriptive commit messages
- Start with a verb (Add, Fix, Update, etc.)
- Keep the first line under 50 characters
- Add details in the commit body if needed
Pull Request Guidelines
To help us review and merge your contributions quickly, please follow these guidelines.
๐ Before Submitting
- โ
Ensure all tests pass (
./mvnw verify) - โ
Run code formatting (
./mvnw spotless:apply) - โ Update documentation for your changes
- โ Add tests for new functionality
- โ Check that your changes work with Java 25
- โ Rebase on the latest main branch
๐ก PR Description Template
## Description
[Brief description of what this PR does]
## Type of Change
- [ ] Bug fix
- [ ] New feature
- [ ] Documentation update
- [ ] Refactoring
- [ ] Other (please describe)
## Testing
[Describe how you tested your changes]
## Checklist
- [ ] Tests pass
- [ ] Code formatted with Spotless
- [ ] Documentation updated
- [ ] No breaking changes
Community
Join our community and help make this template better for everyone.
Code of Conduct
We are committed to providing a welcoming and inclusive environment. Please treat all contributors with respect and kindness.
Getting Help
Have questions? Open an issue on GitHub or check existing discussions. We're here to help!
Ready to Contribute?
Check out the open issues on GitHub and start contributing today!