Skip to main content

Contributing

A quick guide on how to contribute to the Synthergy project on GitHub.

Steps

To contribute to any component of the project, follow these steps:

  1. Create a new branch for your changes, e.g. git checkout -b feature/my-feature.
  2. Add, commit, and push your changes to the remote repository (on your branch).
  3. Create a pull request on GitHub and assign it to a reviewer.
  4. Once your changes have been reviewed and approved, they will be merged into the main (prod) branch.

Branch Naming Conventions

When creating a new branch for your changes, please follow these naming conventions:

  • Feature Branches: feature/my-feature
    • Use when adding any new functionality or feature to the project.
  • Bugfix Branches: bugfix/my-bugfix
    • Use when fixing any bugs or issues in the project.
  • Refactor Branches: refactor/my-refactor
    • Use when refactoring existing code or improving code quality.

Code Review

All pull requests must be reviewed by at least one other contributor before they can be merged. This ensures that the changes are in line with the project's coding standards and best practices.

Review Checklist

When reviewing a pull request, consider the following:

  • Code Quality: Is the code well-structured and easy to understand?
  • Functionality: Does the code work as intended and solve the problem it was designed for?
  • Testing: Are there tests for the new code (when applicable), and do they cover all edge cases?
  • Documentation: Is the code well-documented, and are there any changes to the project's documentation that need to be made?

Continuous Integration

The project uses GitHub Actions for continuous integration. This means that every pull request will be automatically run against the project's test suite and linter to ensure that the changes do not introduce any new bugs or issues.

If the tests fail, the pull request will be blocked from merging until the issues are resolved. This helps maintain the stability and quality of the project.

Resources