Contributing to SynOmics
We welcome contributions to SynOmics! This document provides guidelines for contributing to the project.
Getting Started
Fork the repository on GitHub
Clone your fork locally:
$ git clone https://github.com/YOUR_USERNAME/SynOmics.git
$ cd SynOmics
Create a virtual environment and install dependencies:
$ python -m venv .venv
$ source .venv/bin/activate # On Windows: .venv\Scripts\activate
$ pip install -e ".[dev]"
Development Workflow
Create a new branch for your feature:
$ git checkout -b feature/your-feature-name
Make your changes and add tests
Run tests to ensure everything works:
$ pytest
Commit your changes:
$ git commit -m "Add feature: description"
Push to your fork and submit a pull request
Code Style
Follow PEP 8 guidelines
Use type hints where appropriate
Write docstrings for all public functions and classes
Keep functions focused and concise
Testing
Write tests for all new features
Ensure all tests pass before submitting a pull request
Aim for high code coverage
Documentation
Update documentation for any API changes
Add examples for new features
Keep documentation clear and concise
Questions?
If you have questions about contributing, please open an issue on GitHub.