-
Notifications
You must be signed in to change notification settings - Fork 1
Description
fMRwhy: BIDS-compatible multi-echo fMRI analysis and quality control with SPM12/MATLAB/Octave
Project Description
With this hackathon I would like to onboard anyone who wants to join, contribute to, or learn more about the fMRwhy project: a toolbox for BIDS-compatible multi-echo fMRI analysis and data quality control with SPM12/MATLAB/Octave.
You can access more information about the toolbox here:
If you go through the documentation and code base you will notice that many aspects are lacking, poorly implemented, undocumented, and more. That's why the project is at a great stage to receive contributions, from updates to the documentation to setting up a testing framework.
Specific goal
During the weeks before the hackathon, I will create specific issues on the fMRwhy GitHub repo that will guide new contributors. These issues will likely relate to the following aspects that require improvement:
- Creating a more user-friendly README
- Testing the toolbox using your own or publicly available data
- Writing unit tests (currently, there are none 😬)
- Setting up a unit/integration testing framework
- Contributing to the documentation, including:
- populating the section on multi-echo fMRI
- populating the section on real-time fMRI
- populating the API
- Adding docstrings to most functions
- Adding visualisation features to the fMRI QC report
- Creating tutorials for using toolbox features
Skills required to participate
Anyone who wants to contribute should be able to contribute. There are, however, some required skills depending on the features that you'd like to contribute to:
- For logging issues or feature requests: a keen interest and familiarity with describing issues via GitHub
- For testing the toolbox: a basic understanding of fMRI analysis with SPM12/MATLAB and BIDS data
- For contributing to the documentation: git/github, sphinx, sphinx-contrib/matlabdomain, reStructuredText
- For contributing to the code: git/github, MATLAB, javascript, html, css
- For creating tutorials: git/github, using MATLAB/Octave with Jupyter Notebooks
Specific levels of requirement for if you want to contribute to specific software features include:
| language | level of expertise required |
|---|---|
| MATLAB | beginner / confirmed / expert |
| javascript | confirmed / expert |
| html | confirmed / expert |
| css | confirmed / expert |
| SPM | beginner / confirmed / expert |
| GIT - 2 | comfortable working with branches and can do a pull request on another repository |
If you don't have the required skills but are keen to acquire them while contributing, please feel free to reach out!
Integration
How would your project integrate a physicist/imager/clinician/psychologist/computational scientist/maker/artist/lawyer as collaborator?
...to be determined...
Preparation material
- Documentation for
fMRwhy - Multi-echo fMRI overview
- sphinxcontrib-matlabdomain
- Readthedocs
- BIDS website
- BIDS documentation
