Contributing
Contributions to Neuroslice are welcome! This page provides guidelines for contributing to the project.
How to Contribute
Fork the Repository
Fork the repository on GitHub at https://github.com/anamatoso/neuroslice
Clone Your Fork
git clone https://github.com/YOUR-USERNAME/neuroslice.git cd neuroslice
Create a Branch
git checkout -b feature/YourFeatureName
Make Your Changes
Make your changes (i.e. add new feature or correct bug) in the codebase. Always follow the existing code style. Update the documentation accordingly
Check if it follows code style guidelines
Install flake8 and pylint if you haven’t already:
pip install flake8 pylint
Run the checks (Flake and Pylint checks should pass without errors (and with score>=7.0 for pylint)):
flake8 . --count --max-complexity=10 --max-line-length=127 --statistics pylint $(find . -type f -name "*.py" ! -path "*/venv/*" ! -path "*/.venv/*" ! -path "*/env/*") --fail-under=7.0 --max-locals=30
Commit Your Changes
git add . git commit -m "Add: Brief description of your changes"
Push to Your Fork
git push origin feature/YourFeatureName
Open a Pull Request
Go to the original repository and open a Pull Request with a clear description of your changes.
Code Style Guidelines
Follow PEP 8 style guidelines
Use meaningful variable and function names
Add docstrings to all functions (Google style preferred)
Update documentation as needed
Keep functions focused and modular
Reporting Issues and Questions/Support
Check existing issues to avoid duplicates
Open a new issue on GitHub
Provide clear description and steps to reproduce (if applicable)
Include system information and error messages if applicable
Add an appropriate label (bug, enhancement, question, etc.)