Skip to content

Commit

Permalink
Updating the documentation (#125)
Browse files Browse the repository at this point in the history
* Shorten intro

* Add inria support

* Add intro contrib

* move content to new file (developer doc)

* Contrib as main title

* Add two profiles

* Separate in two issues

* fix typo

* Remove toc

* Remove duplicate ref

* Add link to nipype

* Remove direct links to step 2

* Add wip to user doc
  • Loading branch information
cmaumet authored Nov 14, 2023
1 parent 3df65af commit 93bb718
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 34 deletions.
7 changes: 7 additions & 0 deletions CONTENT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
### Contents overview

- :snake: :package: `narps_open/` contains the Python package with all the pipelines logic.
- :brain: `data/` contains data that is used by the pipelines, as well as the (intermediate or final) results data. Instructions to download data are available in [INSTALL.md](/INSTALL.md#data-download-instructions).
- :blue_book: `docs/` contains the documentation for the project. Start browsing it with the entry point [docs/README.md](/docs/README.md)
- :orange_book: `examples/` contains notebooks examples to launch of the reproduced pipelines.
- :microscope: `tests/` contains the tests of the narps_open package.
22 changes: 15 additions & 7 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,19 @@
# How to contribute to NARPS Open Pipelines ?

General guidelines can be found [here](https://docs.github.com/en/get-started/quickstart/contributing-to-projects) in the GitHub documentation.
For the reproductions, we are especially looking for contributors with the following profiles:
- 👩‍🎤 SPM, FSL, AFNI or nistats has no secrets for you? You know this fMRI analysis software by heart 💓. Please help us by reproducing the corresponding NARPS pipelines. 👣 after step 1, follow the fMRI expert trail.
- 🧑‍🎤 You are a nipype guru? 👣 after step 1, follow the nipype expert trail.

## Reproduce a pipeline :keyboard:
:thinking: Not sure which one to start with ? You can have a look on [this table](https://github.com/Inria-Empenn/narps_open_pipelines/wiki/pipeline_status) giving the work progress status for each pipeline. This will help choosing the one that best suits you!
# Step 1: Choose a pipeline to reproduce :keyboard:
:thinking: Not sure which pipeline to start with ? 🚦The [pipeline dashboard](https://github.com/Inria-Empenn/narps_open_pipelines/wiki/pipeline_status) provides the progress status for each pipeline. You can pick any pipeline that is in red (not started).

Need more information ? You can have a look to the pipeline description [here](https://docs.google.com/spreadsheets/d/1FU_F6kdxOD4PRQDIHXGHS4zTi_jEVaUqY_Zwg0z6S64/edit?usp=sharing). Also feel free to use the `narps_open.utils.description` module of the project, as described [in the documentation](/docs/description.md).
Need more information to make a decision? The `narps_open.utils.description` module of the project, as described [in the documentation](/docs/description.md) provides easy access to all the info we have on each pipeline.

When you are ready, [start an issue](https://github.com/Inria-Empenn/narps_open_pipelines/issues/new/choose) and choose **Pipeline reproduction**!

### If you have experience with NiPype
# Step 2: Reproduction

## 🧑‍🎤 NiPype trail

We created templates with modifications to make and holes to fill to create a pipeline. You can find them in [`narps_open/pipelines/templates`](/narps_open/pipelines/templates).

Expand All @@ -21,9 +25,9 @@ Feel free to have a look to the following pipelines, these are examples :
| 2T6S | SPM | Yes | [/narps_open/pipelines/team_2T6S.py](/narps_open/pipelines/team_2T6S.py) |
| X19V | FSL | Yes | [/narps_open/pipelines/team_X19V.py](/narps_open/pipelines/team_2T6S.py) |

### If you have experience with the original software package but not with NiPype
## 👩‍🎤 fMRI software trail

A fantastic tool named [Giraffe](https://giraffe.tools/porcupine/TimVanMourik/GiraffePlayground/master) is available. It allows you to create a graph of your pipeline using NiPype functions but without coding! Just save your NiPype script in a .py file and send it as a new issue, we will convert this script to a script which works with our specific parameters.
...

## Find or propose an issue :clipboard:
Issues are very important for this project. If you want to contribute, you can either **comment an existing issue** or **proposing a new issue**.
Expand Down Expand Up @@ -64,3 +68,7 @@ Once your PR is ready, you may add a reviewer to your PR, as described [here](ht
Please turn your Draft Pull Request into a "regular" Pull Request, by clicking **Ready for review** in the Pull Request page.

**:wave: Thank you in advance for contributing to the project!**

## Additional resources

- git and Gitub: general guidelines can be found [here](https://docs.github.com/en/get-started/quickstart/contributing-to-projects) in the GitHub documentation.
35 changes: 8 additions & 27 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,45 +15,26 @@
<img src="https://img.shields.io/github/commit-activity/m/Inria-Empenn/narps_open_pipelines" /></a>
</p>

## Table of contents

- [Project presentation](#project-presentation)
- [Getting Started](#getting-started)
- [Contents overview](#contents-overview)
- [Installation](#installation)
- [Contributing](#contributing)
- [References](#references)
- [Funding](#funding)

## Project presentation

Neuroimaging workflows are highly flexible, leaving researchers with multiple possible options to analyze a dataset [(Carp, 2012)](https://www.frontiersin.org/articles/10.3389/fnins.2012.00149/full).
However, different analytical choices can cause variation in the results [(Botvinik-Nezer et al., 2020)](https://www.nature.com/articles/s41586-020-2314-9), leading to what was called a "vibration of effects" [(Ioannidis, 2008)](https://pubmed.ncbi.nlm.nih.gov/18633328/) also known as analytical variability.

**The goal of the NARPS Open Pipelines project is to create a codebase reproducing the 70 pipelines of the NARPS project (Botvinik-Nezer et al., 2020) and share this as an open resource for the community**.

To perform the reproduction, we are lucky to be able to use the [descriptions provided by the teams](https://github.com/poldrack/narps/blob/1.0.1/ImageAnalyses/metadata_files/analysis_pipelines_for_analysis.xlsx).
We also created a [shared spreadsheet](https://docs.google.com/spreadsheets/d/1FU_F6kdxOD4PRQDIHXGHS4zTi_jEVaUqY_Zwg0z6S64/edit?usp=sharing) that can be used to add comments on pipelines (e.g.: identify the ones that are not reproducible with NiPype).
We base our reproductions on the [original descriptions provided by the teams](https://github.com/poldrack/narps/blob/1.0.1/ImageAnalyses/metadata_files/analysis_pipelines_for_analysis.xlsx) and test the quality of the reproductions by comparing our results with the original results published on NeuroVault.

:vertical_traffic_light: Lastly, please find [here in the project's wiki](https://github.com/Inria-Empenn/narps_open_pipelines/wiki/pipeline_status) a dashboard to see pipelines work progresses at first glance.
:vertical_traffic_light: See [the pipeline dashboard](https://github.com/Inria-Empenn/narps_open_pipelines/wiki/pipeline_status) to view our current progress at a glance.

## Getting Started
## Contributing

### Contents overview
NARPS open pipelines uses [nipype](https://nipype.readthedocs.io/en/latest/index.html) as a workflow manager and provides a series of templates and examples to help reproduce the different teams’ analysis.

- :snake: :package: `narps_open/` contains the Python package with all the pipelines logic.
- :brain: `data/` contains data that is used by the pipelines, as well as the (intermediate or final) results data. Instructions to download data are available in [INSTALL.md](/INSTALL.md#data-download-instructions).
- :blue_book: `docs/` contains the documentation for the project. Start browsing it with the entry point [docs/README.md](/docs/README.md)
- :orange_book: `examples/` contains notebooks examples to launch of the reproduced pipelines.
- :microscope: `tests/` contains the tests of the narps_open package.
There are many ways you can contribute 🤗 :wave: Any help is welcome ! Follow the guidelines in [CONTRIBUTING.md](/CONTRIBUTING.md) if you wish to get involved !

### Installation

To get the pipelines running, please follow the installation steps in [INSTALL.md](/INSTALL.md)

### Contributing

:wave: Any help is welcome ! Follow the guidelines in [CONTRIBUTING.md](/CONTRIBUTING.md) if you wish to get involved !
## Getting started
If you are interested in using the codebase to run the pipelines, see the [user documentation (work-in-progress)].

## References

Expand All @@ -64,7 +45,7 @@ To get the pipelines running, please follow the installation steps in [INSTALL.m

## Funding

This project is supported by Région Bretagne (Boost MIND).
This project is supported by Région Bretagne (Boost MIND) and by Inria (Exploratory action GRASP).

## Credits

Expand Down

0 comments on commit 93bb718

Please sign in to comment.