Contributing to biosigmat¶
Thank you for your interest in contributing to biosigmat! This document provides guidelines and information to help you contribute effectively to the project.
Code Organization¶
The project is organized as follows:
src/: Contains the source code of the librarytools/: Utility functions used throughout the library- Additional subdirectories for specific functionality
test/: Contains test files for the source codetools/: Tests for utility functions- Additional subdirectories matching the structure in
src/
examples/: Contains example usage of the library functions- Subdirectories matching the structure in
src/
- Subdirectories matching the structure in
Requirements
- All methods in
src/must have a corresponding test intest/ - All methods in
src/must have a corresponding example inexamples/ - Exception: Functions in
src/tools/must have tests intest/tools/but are not required to have examples inexamples/tools/
Style Guidelines
For detailed code style guidelines including naming conventions, code structure, test structure, and MATLAB-specific guidelines, please refer to the Code Style Guide.
Generated Documentation¶
API and example reference pages are generated from MATLAB function headers and example source files. Contributors should update the relevant .m headers or examples instead of editing generated Markdown under docs/api/ or docs/examples/.
Generated API/example Markdown is ignored by Git and rebuilt by the docs workflow before mkdocs build --strict. Contributors do not need to commit generated API/example Markdown before pushing.
To preview generated documentation locally, run this from MATLAB:
addpath('scripts/docs');
updateDocs;
Then build the site:
mkdocs build --strict
Contributing Process¶
- Fork the repository and create a new branch for your feature or bug fix
- Implement your changes following the coding guidelines
- Add tests for your implementation
- Add examples demonstrating the usage of your implementation (except for
tools/functions) - Ensure all tests pass
- Submit a pull request with a clear description of the changes and any relevant information
PR Guidelines
When submitting a pull request:
- Provide a clear, descriptive title
- Describe what your changes do and why they should be included
- Include any relevant issue numbers in the PR description
- Ensure your code follows the project's coding standards
- Make sure all tests pass
Need Help?
If you have questions or need assistance, please open an issue with a clear description of your question or problem.
Thank you for contributing to biosigmat!