Contributing¶
Thank you for your interest in contributing to Sayou Fabric! We use a Monorepo structure, meaning multiple libraries (sayou-core, sayou-brain, etc.) coexist in this single repository.
Quick Start¶
Since this is a monorepo, install packages in editable mode to test changes immediately.
1. Fork & Clone
2. Install in Editable Mode
# Install core dependencies in editable mode
pip install -e ./packages/sayou-core
pip install -e ./packages/sayou-brain
# If working on a specific plugin (e.g., connector)
pip install -e ./packages/sayou-connector
3. Run Tests
Pull Request Protocol¶
- Focus — Keep PRs focused on a single library if possible (e.g., "Add Notion Fetcher to sayou-connector").
- Naming — Start commit messages with the component name.
[connector] Add Notion support[core] Fix retry decorator
- Tests — Add a unit test in
tests/{library_name}/.
Style Guide¶
- Follow PEP 8.
- Run Black and Isort before committing.
Templates¶
Component
Which library is causing the issue? (e.g., sayou-connector, sayou-chunking)
Describe the bug
A clear and concise description of what the bug is.
Configuration / Strategy Used
To Reproduce
- Initialize pipeline...
- Run method...
- See error
Expected behavior
A clear and concise description of what you expected to happen.
Logs / Traceback
Environment
- OS: (e.g., macOS)
- Python Version: (e.g., 3.11)
- Sayou Version: (e.g., 0.4.0)
Is your feature request related to a problem?
A clear and concise description of the problem. (e.g., "I'm always frustrated when...")
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
Any alternative solutions or features you've considered.
Additional context
Any other context or screenshots about the feature request.
Description
A summary of the change and which issue is fixed.
Fixes # (issue number)
Affected Components
- [ ] `sayou-core`
- [ ] `sayou-brain`
- [ ] `sayou-connector`
- [ ] `sayou-document`
- [ ] `sayou-refinery`
- [ ] `sayou-chunking`
- [ ] `sayou-wrapper`
- [ ] `sayou-assembler`
- [ ] `sayou-loader`
- [ ] `sayou-extractor`
- [ ] `sayou-llm`
- [ ] `sayou-visualizer`
Type of change
Checklist
Code of Conduct¶
Sayou Fabric follows the Contributor Covenant v2.0.
The full text is available at CODE_OF_CONDUCT.md.