Thank you for considering contributing to vitalDSP! This document provides guidelines to help you contribute effectively, whether by reporting issues, suggesting features, or submitting code changes.
Please follow Python's Core Guidelines Adhere to Python's PEP 8 for code style, PEP 257 for docstring conventions, and strive to write clean, maintainable code.
If you find a bug, please help us by opening an issue and including:
- A clear title and description.
- Steps to reproduce the problem.
- Expected and actual results.
- The version of vitalDSP and Python you’re using.
We welcome feature suggestions! You can:
- Open an issue labeled Feature Request with a description of your suggestion.
- Share why this feature is beneficial, including any potential use cases.
- If possible, provide examples or ideas for implementation.
Documentation improvements are always welcome! Here’s how you can contribute:
- Fix typos, improve explanations, or add missing information.
- Add examples or usage cases to help other users understand features.
- Update the README or ReadTheDocs documentation.
Before you start coding, consider:
- Checking for an existing issue or creating a new one to discuss your proposed change.
- Reviewing existing pull requests to avoid duplicating work.
- Keeping contributions focused on one specific area to make them easier to review.
-
Fork the Repository
Start by forking the vitalDSP repository to your GitHub account. -
Clone Your Fork
Clone your fork to your local machine:git clone https://github.com/YOUR_USERNAME/vital-DSP.git cd vital-DSP
-
Install Dependencies
vitalDSP requires certain Python packages for development. You can install them using:pip install -r requirements.txt
-
Install the Package in Editable Mode
Install vitalDSP in editable mode to allow direct modifications without reinstallation:pip install -e .
Testing is essential to ensure the reliability of vitalDSP. Before submitting changes, make sure all tests pass:
-
Install Test Dependencies
Install testing tools if not already installed:pip install pytest coverage
-
Run Tests
Run the full test suite to ensure code quality:pytest tests/
-
Check Code Coverage
Check the coverage of your tests with:coverage run -m pytest tests/ coverage report -m
-
Create a New Branch
Create a branch specific to your contribution. Use a descriptive name for your branch (e.g.,feature-new-filter
orbugfix-amplitude-computation
):git checkout -b your-branch-name
-
Make Your Changes
Commit small, logical changes with meaningful commit messages. -
Push to Your Fork
Push your branch to your forked repository:git push origin your-branch-name
-
Submit a Pull Request (PR)
Go to the original repository and open a pull request.- Link to any related issues.
- Provide a summary of your changes and why they’re necessary.
- Be open to feedback and make any necessary changes as requested by reviewers.
Thank you for contributing to vitalDSP! Your help in improving this library is greatly appreciated.