Contributing to NEST
Join our community and help advance brain-computer interfaces
Ways to Contribute
Bug Reports
Found a bug? Report it on GitHub Issues with reproduction steps and environment details.
Feature Requests
Have an idea? Open a discussion to propose new features or improvements.
Code Contributions
Submit pull requests for bug fixes, features, or documentation improvements.
Documentation
Improve docs, write tutorials, or translate documentation to other languages.
Testing
Help test new releases and provide feedback on experimental features.
Research
Collaborate on research, share datasets, or propose new model architectures.
Development Setup
# 1. Fork and clone the repository git clone https://github.com/YOUR_USERNAME/NEST.git cd NEST # 2. Create virtual environment python -m venv venv source venv/bin/activate # 3. Install development dependencies pip install -r requirements-dev.txt pip install -e . # 4. Run tests pytest tests/ # 5. Create a branch for your changes git checkout -b feature/your-feature-name
Code Style Guidelines
Follow PEP 8
Use Black formatter and flake8 linter. Run make format before committing.
Type Hints
Add type hints to all function signatures. Use mypy for type checking.
Docstrings
Use Google-style docstrings for all public functions and classes.
Tests Required
All new features must include unit tests. Maintain >80% test coverage.
Pull Request Process
Create an Issue
Discuss the change you want to make before starting work.
Make Your Changes
Implement your feature or fix with tests and documentation.
Submit PR
Open a pull request with a clear description of changes.
Review & Merge
Address feedback, pass CI checks, and get merged!
Join the Community
Connect with other contributors and researchers
Code of Conduct
We are committed to providing a welcoming and inclusive environment for all contributors. Please read our Code of Conduct before participating.