Skip to content

5. Contributing

Maksymilian edited this page Dec 9, 2024 · 2 revisions

Contribution

We welcome contributions to PictureComparer! Whether you want to fix a bug, add a new feature, improve documentation, or help with testing, your contribution is highly appreciated. Follow the steps below to get started with contributing to this project.

How to Contribute

To contribute to PictureComparer, follow these steps:

  1. Fork the Repository

First, fork the repository to your own GitHub account. This will allow you to freely make changes without affecting the original codebase. You can do this by clicking the "Fork" button at the top right of the repository page.

  1. Clone Your Fork

Once the repository is forked, clone it to your local machine:

git clone https://github.com/your-username/PictureComparer.git
cd PictureComparer

Replace your-username with your GitHub account username.

  1. Create a New Branch

Before making any changes, create a new branch. It's important to name the branch according to the purpose of your changes (e.g., feature/optimize-cache or bugfix/fix-image-loading).

git checkout -b your-branch-name

Replace your-branch-name with valid branch name.

  1. Make Your Changes

Now, you're ready to make the necessary changes in your local repository. Whether it's fixing a bug, adding a new feature, or improving documentation, make sure to follow the code style and structure of the project.

  • If you're fixing a bug, ensure that you also provide a test to verify the fix.
  • If you're adding a new feature, consider adding tests or documentation explaining how the feature works.
  • If you're improving existing code, make sure to refactor it in a way that doesn't break existing functionality.
  1. Commit Your Changes

After making your changes, commit them with a clear and concise commit message (not like me sometimes :P) explaining what you've done. For example:

git add .
git commit -m "Added new caching mechanism to improve performance"

It's recommended to follow conventional message guidelines for consistency.

  1. Push Your Changes

Once you've committed your changes, push them to your forked repository:

git push origin your-branch-name

Replace your-branch-name with valid branch name you've created in previous steps.

  1. Create a Pull Request (PR)

After pushing your changes, navigate to the original PictureComparer repository on GitHub. GitHub will usually prompt you to create a pull request for the branch you've pushed. Click on "New Pull Request" and fill in the details about your changes. Be clear about what your pull request addresses (e.g., a bug fix, new feature, documentation update, etc.).

Make sure to link any related issues or provide additional context in the PR description. If you're unsure, feel free to ask the project maintainers for guidance on how to structure your pull request.

  1. Review Process

Once you've submitted your PR, it will be reviewed by the maintainers. They may suggest changes or ask for clarification on certain points. Be sure to address any feedback promptly. The goal is to keep the project clean, stable, and maintainable, so constructive criticism is always welcome.

  1. Merge and Celebrate!

After your PR is approved, it will be merged into the main codebase. Congratulations! 🎊

Code of Conduct

By contributing to PictureComparer, you agree to follow our Code of Conduct. This includes treating all contributors with respect, being collaborative, and fostering a positive environment where everyone can contribute without fear of harassment.

Reporting Issues

If you find a bug or encounter an issue while using PictureComparer, please open an issue on the GitHub repository. When reporting issues, try to include as much detail as possible, including:

  • A clear description of the issue.
  • Steps to reproduce the problem.
  • Any error messages or logs that are relevant.
  • Your environment (e.g., operating system, Java version, etc.).

In general follow the template provided in the repository.

Testing

We highly encourage writing tests to cover new features or bug fixes. PictureComparer uses JUnit for testing, and we rely on tests to ensure that new changes don't break existing functionality.

  • If you're fixing a bug, make sure to add a test that reproduces the issue.
  • If you're adding a new feature, add tests that ensure the feature works as expected.

Documentation:

If you're contributing to documentation or helping improve the README or Wiki, be sure to:

  • Write clear and concise instructions.
  • Update any code examples to match the latest version of the library.
  • Check spelling and grammar for a professional finish.

With these steps, you should be well on your way to contributing to the PictureComparer project! We’re excited to have you on board and appreciate your help in making the project better. Happy coding! 🚀

Clone this wiki locally