Contributing to BioML-bench¶
We welcome contributions to BioML-bench! This guide covers how to contribute effectively.
Development Setup¶
- Fork and clone the repository
- Install development dependencies:
- Build the base environment:
Types of Contributions¶
- New biomedical tasks - Add tasks from your domain expertise
- Agent implementations - Contribute new AI agents
- Data source integrations - Support new biomedical benchmark databases
- Documentation improvements - Help improve this documentation
- Bug fixes and optimizations - Code quality improvements
Contribution Process¶
- Create a feature branch
- Make your changes
- Test thoroughly with existing tasks
- Submit a pull request
- Address review feedback
Code Standards¶
- Follow PEP 8 style guidelines
- Add comprehensive docstrings
- Include type hints
- Update documentation for user-facing changes
Documentation¶
Building Documentation¶
BioML-bench uses MkDocs with auto-generated API documentation. When contributing:
Build and serve docs locally:
Documentation is automatically generated from:
- Docstrings - All API documentation comes from code docstrings
- CLI help - CLI documentation is extracted from argparse definitions
- Manual content - User guides, tutorials, and conceptual documentation
When to update documentation:
- Add docstrings to new functions/classes
- Update docstrings when changing function signatures
- Add examples to docstrings for complex functionality
- Manual docs are rarely needed for API changes
Testing¶
Test your changes with: