Contribution Guidelines
π Getting Started
To get started, check the [Issues Section] for tasks labeled "Good First Issue" or "Help Needed". These issues are perfect for new contributors or those looking to make a valuable impact quickly.
If you find an issue you want to tackle:
Comment on the issue to let us know youβd like to work on it. Wait for confirmationβan admin will assign the issue to you. π» Setting Up Your Development Environment To start working on the project, follow these steps:
- Fork the Repository: Begin by forking the repository from the dev branch. We do not allow direct contributions to the main branch.
- Clone Your Fork: After forking, clone the repository to your local machine.
- Create a New Branch: For each contribution, create a new branch following the naming convention: feature/your-feature-name or bugfix/your-bug-name.
π οΈ Contributing Guidelines
π Reporting Bugs If you find a bug, hereβs how to report it effectively:
Title: Use a clear and descriptive title, with appropriate labels. Description: Provide a detailed description of the issue, including: Steps to reproduce the problem. Expected and actual behavior.
Any relevant logs, screenshots, or additional context. Submit the Bug Report: Open a new issue in the [Issues Section] and include all the details. This helps us understand and resolve the problem faster.
π Contributing to Python Code
If you're contributing to the Python codebase, follow these steps:
- Create an Independent File: Write your code in a new file within the python folder.
- Build with Maturin: After writing your code, use maturin build to build the package.
- Import and Call the Function:
- Use the following import syntax:
from embed_anything.
import * - Then, call the function using:
from embed_anything import
Feel free to open an issue if you encounter any problems during the process.
𧩠Contributing to Adapters To contribute to adapters, follow these guidelines:
- Implement Adapter Class: Create an Adapter class that supports the create, add, and delete operations for your specific use case.
- Check Existing Adapters: Use the existing Pinecone and Weaviate adapters as references to maintain consistency in structure and functionality.
- Testing: Ensure your adapter is tested thoroughly before submitting a pull request.
π Submitting a Pull Request
Once your contribution is ready:
Push Your Branch: Push your branch to your forked repository.
Submit a Pull Request (PR): Open a PR from your branch to the dev branch of the main repository. Ensure your PR includes:
- A clear description of the changes.
- Any relevant issue numbers (e.g., "Closes #123").
- Wait for Review: A maintainer will review your PR. Please be responsive to any feedback or requested changes.