Welcome, and thank you for considering contributing to our open source project! We appreciate your interest and value the time and effort you are willing to invest in making this repository even better. This guide will provide you with the necessary information to contribute effectively and ensure a smooth collaboration process.
- Before Contributing
- Getting Started
- Making Contributions
- Code Standards
- Submitting Pull Requests
- Issue Tracking
- Contact
Before diving into the contribution process, we encourage you to take the following steps:
-
Check existing issues and discussions: Browse through the repository's issue tracker and discussions to see if there are any open topics related to your proposed contribution. This helps prevent duplication of effort and ensures that you align your work with the project's goals.
-
Open an issue: If you can't find an existing issue that matches your proposed contribution, consider opening a new issue. Describe the problem, feature request, or improvement you have in mind. This allows the community to discuss the idea and provide feedback before you invest time in implementing it.
-
Join the discussion: Engage with the community by participating in ongoing discussions. Share your thoughts, ask questions, and offer suggestions. This collaborative approach helps create a stronger and more inclusive community.
Before diving into the contribution process, take a moment to familiarize yourself with the repository's purpose, goals, and existing codebase. It's essential to understand the project's context, architecture, and any relevant guidelines.
If you haven't done so already, fork the repository and clone it to your local development environment. You will need this local copy to implement your changes and submit them as pull requests.
Contributions to this repository can come in various forms, including bug fixes, feature additions, documentation improvements, and more. Here are some general guidelines to follow:
-
Familiarize yourself with the existing codebase: Understand the overall structure, coding style, and conventions used in the project. This knowledge will help you align your contributions with the existing code.
-
Create a new branch: Before making any changes, create a new branch in your local repository with a descriptive name that reflects the nature of your work.
-
Commit your changes: As you work on your contribution, make logical and atomic commits with clear and concise messages. This will help reviewers understand your thought process and ease the review process.
-
Write clear and concise code: Maintain a high standard of code quality by adhering to the established coding standards and style guidelines. Ensure that your code is readable, well-documented, and self-explanatory.
-
Test your changes: Whenever possible, include tests for the changes you make. This ensures that your contribution functions as intended and prevents regressions in the future.
To maintain consistency and readability throughout the project, we follow a set of code standards. Before submitting your contribution, please ensure that your code adheres to the following guidelines:
- Use descriptive and meaningful variable, function, and class names.
- Follow the existing indentation and formatting conventions.
- Write comments to explain complex logic or improve code clarity.
- Use appropriate design patterns and architectural principles.
When you feel ready to submit your contribution, follow these steps to create a pull request:
-
Rebase your branch: Before opening the pull request, ensure that your branch is up to date with the latest changes from the main repository. You can do this by rebasing your branch on the latest upstream/master.
-
Document your pull request: Provide a clear and concise description of the changes you made. Include any relevant information that might help reviewers understand your contribution better.
-
Submit your pull request: Once you have completed the steps above, submit your pull request. Our team will review your changes, provide feedback if necessary, and work with you to merge your contribution into the main repository.
If you encounter any issues, have questions, or want to suggest new features, please check the repository's issue tracker. Before submitting a new issue, search for existing ones to avoid duplicates. Provide as much detail as possible to help us understand the problem or feature request better.
If you have any further questions or need assistance, please feel free to contact us through [mailto:MudrikLab@tauex.tau.ac.il]. We are here to help and support you throughout the contribution process.
Thank you once again for your interest in contributing to our open source repository. We look forward to collaborating with you and appreciate the value you bring to the project!