Contributing
Thank you for your interest in contributing to multimark! We welcome contributions from the community.
How to Contribute
Reporting Issues
If you find a bug or have a suggestion for improvement:
- Check if the issue already exists in the issue tracker
- If not, create a new issue with a clear description
- Include steps to reproduce (for bugs) or use cases (for features)
Submitting Pull Requests
- Fork the repository
- Create a new branch for your changes:
git checkout -b feature/your-feature-name - Make your changes and commit them with clear, descriptive messages
- Add tests for new functionality
- Ensure all tests pass:
pytest - Push to your fork and submit a pull request
Development Setup
# Clone your fork
git clone https://github.com/YOUR-USERNAME/multimark.git
cd multimark
# Create a virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install in development mode with test dependencies
pip install -e .
pip install pytest
# Run tests
pytest tests/ -vNote: Building from source requires a C compiler (for the cmark-gfm CFFI bindings). On most systems this is already available, but on Windows you may need the Visual Studio Build Tools.
Code Style
- Follow PEP 8 guidelines
- Use meaningful variable and function names
- Add NumPy-style docstrings to public functions and classes
- Keep functions focused and concise
Running the Documentation Site
pip install great-docs
great-docs build
great-docs previewQuestions?
Feel free to open an issue for questions or discussions about contributing.