Skip to main content

Contributing Guide

CocoIndex is an open source project. We are respectful, open and friendly. This guide explains how to get involved and contribute to CocoIndex.

Our Discord server is constantly open. If you are unsure about anything, it is a good place to discuss! We'd love to collaborate and will always be friendly.

Good First Issues

We tag issues with the "good first issue" label for beginner contributors.

How to Contribute

  • If you decide to take an issue, we recommend you to leave a comment on the issue like Can I work on this issue? so we could assign it to you. This helps you and others avoid duplicating work.
  • For larger features, we recommend you to discuss with us first in our Discord server to coordinate the design and work.

Submit Your Code

CocoIndex is committed to the highest standards of code quality. Please ensure your code is thoroughly tested before submitting a PR.

To submit your code:

  1. Fork the CocoIndex repository

  2. Create a new branch on your fork

  3. Make your changes

  4. Run the pre-commit checks (automatically triggered on git commit)

    tip

    To run them manually (same as CI):

    pre-commit run --all-files
  5. Open a Pull Request (PR) when your work is ready for review

In your PR description, please include:

  • Description of the changes
  • Motivation and context
  • Note if it's a breaking change
  • Reference any related GitHub issues

A core team member will review your PR within one business day and provide feedback on any required changes. Once approved and all tests pass, the reviewer will squash and merge your PR into the main branch.

Your contribution will then be part of CocoIndex! We'll highlight your contribution in our release notes 🌴.