|
1 | | -# nipreps-book |
| 1 | +# NiPreps Book |
| 2 | + |
| 3 | +NiPreps Book is a [Jupyter Book](https://jupyterbook.org) that accompanies the NiPreps |
| 4 | +community workshops. The material walks readers through implementing a |
| 5 | +head-motion–correction workflow for diffusion MRI (dMRI) data using tools from |
| 6 | +[DIPY](https://dipy.org), [NiTransforms](https://nipy.org/nitransforms), and the |
| 7 | +broader NiPreps ecosystem. Besides explaining the motivation behind the |
| 8 | +"analysis-grade" data philosophy, the book provides hands-on notebooks that show |
| 9 | +how to assemble reproducible preprocessing components. |
| 10 | + |
| 11 | +## Get started |
| 12 | + |
| 13 | +### Run it in your browser |
| 14 | + |
| 15 | +If you prefer not to install anything locally, launch the notebooks in an |
| 16 | +ephemeral Binder session: |
| 17 | + |
| 18 | +[](https://mybinder.org/v2/gh/nipreps/nipreps-book/main?urlpath=lab/tree/docs/notebook) |
| 19 | + |
| 20 | +Binder sessions can take a few minutes to start and reset after inactivity. |
| 21 | + |
| 22 | +### Build the book locally |
| 23 | + |
| 24 | +This repository is configured with [pixi](https://prefix.dev/pixi) for |
| 25 | +reproducible environments: |
| 26 | + |
| 27 | +1. [Install pixi](https://prefix.dev/docs/pixi/installation). |
| 28 | +2. Create the environment and install the dependencies: |
| 29 | + |
| 30 | + ```bash |
| 31 | + pixi install |
| 32 | + ``` |
| 33 | +3. Build the static HTML version of the book: |
| 34 | + |
| 35 | + ```bash |
| 36 | + pixi run build-book |
| 37 | + ``` |
| 38 | + |
| 39 | +The rendered site will be available under `docs/_build/html`. To explore the |
| 40 | +notebooks interactively, launch JupyterLab with `pixi run serve` and open the |
| 41 | +files inside `docs/notebook/`. |
| 42 | + |
| 43 | +### Working with the tutorial dataset |
| 44 | + |
| 45 | +Several chapters rely on a small diffusion MRI dataset. The helper module |
| 46 | +`tutorial_data.py` automatically downloads the dataset to `data/` the first time |
| 47 | +it is requested. If you already have a copy of the file, set the |
| 48 | +`NIPREPS_TUTORIAL_DATA` environment variable to point to it before running the |
| 49 | +notebooks. |
| 50 | + |
| 51 | +## Repository layout |
| 52 | + |
| 53 | +- `docs/` – Markdown content, notebook sources, and static assets for the book. |
| 54 | +- `data/` – Cached example diffusion MRI dataset used throughout the tutorial. |
| 55 | +- `binder/` – Configuration used to build the Binder environment. |
| 56 | +- `pixi.toml` – Environment definition and common development tasks. |
| 57 | +- `tutorial_data.py` – Utility functions for fetching the tutorial dataset. |
| 58 | + |
| 59 | +## Contributing |
| 60 | + |
| 61 | +Issues, feature requests, and pull requests are welcome! Please review the |
| 62 | +open issues on GitHub and let us know how the material can be improved. When |
| 63 | +submitting changes, follow the standard GitHub workflow and ensure the book |
| 64 | +builds locally (`pixi run build-book`) before opening a pull request. |
| 65 | + |
| 66 | +## Citation |
| 67 | + |
| 68 | +If you use the material in your own work, please cite the |
| 69 | +project as described in [CITATION.cff](CITATION.cff). |
0 commit comments