This project is a community effort, and everyone is welcome to contribute.
The project is hosted on https://github.com/nilearn/nilearn
The best way to contribute and to help the project is to start working on known issues. See Good first issues to get started.
If an issue does not already exist for a potential contribution, we ask that you first open an issue before sending a :ref:`pull request`.
Nilearn uses issues for tracking bugs, requesting potential features, and holding project discussions.
Core developers can assign labels on issues, such as:
- These issues discuss ongoing discussions on the project where community feedback is requested.
- These issues discuss potential enhancements or additions to the project.
- These issues detail known bugs in the Nilearn code base.
We welcome pull requests from all community members. We follow the same conventions as scikit-learn. You can find the recommended process to submit code in the scikit-learn guide to contributing code.
We use Git for version control and GitHub for hosting our main repository. If you are new on GitHub and don't know how to work with it, please first have a look at this to get the basics.
You can check out the latest sources with the command:
git clone git://github.com/nilearn/nilearn.git
or if you have write privileges:
git clone git@github.com:nilearn/nilearn.git
Nilearn follows the coding conventions used by scikit-learn. Please read them before you start implementing your changes.
To build our documentation, we are using sphinx for the main documentation and sphinx-gallery for the example tutorials. If you want to make changes to the example tutorials, please do the following :
First, ensure that you have installed sphinx and sphinx-gallery. You can install the requirements using
nilearn/requirements-build-docs.txt
.Fork the Nilearn repository and clone your fork.
Then go to
nilearn/examples
Make your changes using reStructuredText files
You can now go to nilearn/doc and build the examples locally:
make html-strict
or, if you do not have make install (for instance under Windows):
python3 -m sphinx -b html -d _build/doctrees . _build/html
Visually review the output in
nilearn/doc/_build/html/auto_examples/
. If all looks well and there were no errors, commit and push the changes.You can now open a Pull Request from Nilearn's Pull Request page.
For more details about the Fork Clone Push worksflow, read here <https://guides.github.com/activities/forking/>_
TIPS : To reduce building time, we suggest you to use the filename_pattern
to build just one specific file:
python3 -m sphinx -D sphinx_gallery_conf.filename_pattern=plot_decoding_tutorial.py -b html -d _build/doctrees . _build/html