Warning
Draft - This documentation is under development.
Thank you for your interest in contributing to the Annotation Garden Initiative! This document provides guidelines for contributing across all AGI repositories.
# Clone the repository you want to contribute to
git clone https://github.com/Annotation-Garden/<repo-name>.git
cd <repo-name>
# Create a feature branch
git checkout -b feature/your-feature-name
# Make changes, test, and commit
git add .
git commit -m "Add your descriptive commit message"
# Push and create PR
git push -u origin feature/your-feature-name- Open Science: All contributions should advance open, reproducible science
- Standards Compliance: Follow BIDS and HED specifications
- Version Control: Use atomic commits and descriptive commit messages
- Collaboration: Engage in discussions through Issues and PRs
- Fork the relevant stimulus repository
- Add or refine annotations following the repository structure
- Ensure HED validation passes (automated checks)
- Submit a pull request with clear description of changes
- Engage in review discussion
- Create a feature branch from main
- Make changes with atomic commits
- Test thoroughly before submitting PR
- Follow code style guidelines (see specific repository)
- Update documentation as needed
- Check for existing issues or discussions
- Submit PRs for significant changes
- Use clear, concise language
- Include examples where helpful
- Use present tense ("Add feature" not "Added feature")
- Be concise but descriptive
- Reference issues when applicable (#123)
- No emojis in commit messages
- Be respectful and inclusive
- Provide constructive feedback
- Assume good intentions
- Focus on scientific merit
The Annotation Garden Initiative spans multiple repositories. Here are best practices for contributing across the organization:
- Organization Repository: Start in the management repository for high-level discussions, governance questions, and cross-repository coordination
- Repository-Specific Work: Move to specific repositories (stimulus datasets, tools, website, assets) for detailed work
- Stay Connected: Reference management repository issues for context on organization-wide decisions
- For changes affecting multiple repositories, discuss in the management repository first
- Coordinate with the Standards Working Group for BIDS/HED integration changes
- Reference related issues in dependent repositories using GitHub's linking syntax
When making contributions that span multiple repositories:
- Start with an issue in the management repository describing the cross-repository change
- Create linked issues in each affected repository
- Reference the management issue in PRs for traceability
- Example: "See Annotation-Garden/management#123 for context"
# Backend (Python)
cd image-annotation
pip install -e .
pytest tests/ --cov
# Frontend (Next.js)
cd frontend
npm install
npm run devcd website
npm install
npm run devEach repository has its own testing setup. Generally:
- Python:
pytest tests/ --cov - TypeScript/JavaScript:
npm test
Open an issue in the relevant repository or the management repository for general questions about AGI coordination and governance.